Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ENDPOINT] First version of the trusted apps list. #76304

Merged
merged 39 commits into from
Sep 9, 2020

Conversation

efreeti
Copy link
Contributor

@efreeti efreeti commented Aug 31, 2020

Summary

Trusted apps list page.

trusted_apps_list

Checklist

Delete any items that are not applicable to this PR.

Copy link
Contributor

@paul-tavares paul-tavares left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should discuss this PR and the approach again.
Personally, I found the generics and approach to storing current/future views in state a bit confusing to the point I was really not clear what is going on.

@kevinlog
Copy link
Contributor

kevinlog commented Sep 2, 2020

Thanks for making the changes!

From my POV, looks good to start writing tests against. Take a look at the failing tests regarding Endpoint list pagination.

https://github.com/elastic/kibana/pull/76304/checks?check_run_id=1063151680

I think think it may have to do with the way we're extracting the paging values from the URL. They should make their way to the Endpoint List state location object.

FYI @paul-tavares @parkiino

Copy link
Contributor

@paul-tavares paul-tavares left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some comments. They can be addressed in a subsequent PR - getting this through will enable concurrent work to go on in the UI ⭐
This most current version captures the common approaches that we been using, and with regards to the store state (bindings), we already discussed that renaming/adjusting those can come later.

Remember to Label your PR prior to moving it out of Draft and also add some prefixes to the PR title (I been using [SECURITY_SOLUTION][ENDPOINT], but I have seen other values.)

import { HttpStart } from 'kibana/public';
import { TRUSTED_APPS_LIST_API } from '../../../../../common/endpoint/constants';
import {
GetTrustedListAppsResponse,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😳 I'll correct this. Should have been GetTrustedAppsListResponse

@efreeti efreeti marked this pull request as ready for review September 8, 2020 12:41
@efreeti efreeti requested review from a team as code owners September 8, 2020 12:41
@efreeti efreeti changed the title First version of the trusted apps list. [ENDPOINT] First version of the trusted apps list. Sep 8, 2020
@elasticmachine
Copy link
Contributor

Pinging @elastic/endpoint-management (Team:Endpoint Management)

@efreeti efreeti added the Feature:Endpoint Elastic Endpoint feature label Sep 8, 2020
@elasticmachine
Copy link
Contributor

Pinging @elastic/endpoint-app-team (Feature:Endpoint)

@efreeti efreeti added the release_note:skip Skip the PR/issue when compiling release notes label Sep 8, 2020
@kibanamachine
Copy link
Contributor

💚 Build Succeeded

Build metrics

@kbn/optimizer bundle module count

id value diff baseline
securitySolution 1972 +10 1962

async chunks size

id value diff baseline
securitySolution 10.0MB +29.2KB 9.9MB

page load bundle size

id value diff baseline
securitySolution 815.8KB +2.9KB 812.9KB

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

Copy link
Contributor

@kevinlog kevinlog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 lgtm, just want @paul-tavares to thumb as well

Copy link
Contributor

@paul-tavares paul-tavares left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍
Had a few questions and suggestion, but non that would warrant delaying this merge.

@efreeti efreeti merged commit 87380f5 into elastic:master Sep 9, 2020
@efreeti efreeti deleted the btsymbala/trusted-apps-list branch September 9, 2020 09:43
efreeti added a commit to efreeti/kibana that referenced this pull request Sep 9, 2020
* First version of the trusted apps list.

* Added proper visualisation of OS and Date Created columns.

* Small change in naming in middleware.

* Renamed function to avoid naming confusion.

* Migrated to usage of selectors and memo in list component.

* Added explicit return types.

* Changed to use server schema for service parameter.

* Removed some over generalisation in types.

* Renamed types and properties related to trusted apps page state.

* Renamed types and properties related to trusted apps page state.

* Renamed the action type to be namespaced to trusted apps.

* Merged the exports and declarations in reducer and used constants for defaults.

* Memoization of pagination data structure.

* Used a shared constant for REST API path.

* Improvements and consistency on pagination across tabs.

* Added a bit more typing and used Partial<>

* Made constants readonly and added some useMemo usages.

* Fixed extracting page index from URI.

* Fixed the case of infinite refreshes when there is loading failure (need to rethink a bit conditions when to refresh).

* Resetting state to initial when we navigate away from trusted apps list.

* Fixed mapping page index to the table pagination.

* Changed to using AppAction in reducer.

* Made ServerApiError a default error type for data binding.

* Renamed all types related to data binding to resource state.

* Created index file for state types.

* Fixed parameter extracting code to meet expectations of endpoints list behavior.

* Updated snapshot.

* Changed middleware to only use selectors.

* Added tests for routing.

* Added documentation to the types in async resource state module.

* Added tests for async resource state module.

* Added tests for store selectors.

* Added tests for reducer.

* Moved around imports.

* Added tests for the middleware.

* Added list component tests.

* Removed a redundant function.

* Commiting snapshots.
gmmorris added a commit to gmmorris/kibana that referenced this pull request Sep 9, 2020
* master: (68 commits)
  a11y tests on spaces home page including feature control  (elastic#76515)
  [ML] Transforms list: persist pagination through refresh interval (elastic#76786)
  [ML] Replace all use of date_histogram interval with fixed_interval (elastic#76876)
  [Timelion] Update timelion deprecation links (elastic#77008)
  [Security Solution] Refactor Network Details to use Search Strategy (elastic#76928)
  Upgrade elastic charts to 21.1.2 (elastic#76939)
  [Alerting][Connectors] Refactor Jira: Generic Implementation (phase one) (elastic#73778)
  [Snapshot & Restore] fix pre existing policy with no existing repository (elastic#76861)
  Update saved object management UI text (elastic#76826)
  [Form lib] Add validations prop to UseArray and expose "moveItem" handler (elastic#76949)
  [Logs UI] Use fields api in log stream (elastic#76919)
  [UI Metrics] Support multi-colon keys (elastic#76913)
  [APM] Script for creating functional test archive (elastic#76926)
  [ENDPOINT] First version of the trusted apps list. (elastic#76304)
  Correct field for rum page url (elastic#76916)
  [Security Solution] Fix redirect properly old SIEM App routes (elastic#76868)
  Bump http-proxy from 1.17.0 to 1.18.1 (elastic#76924)
  [RUM Dashboard] Visitor breakdown usability (elastic#76834)
  [Search] Add a new advanced setting searchTimeout (elastic#75728)
  [DOCS] Adds timelion deprecation to new visualize docs structure (elastic#76959)
  ...
efreeti added a commit that referenced this pull request Sep 10, 2020
* First version of the trusted apps list.

* Added proper visualisation of OS and Date Created columns.

* Small change in naming in middleware.

* Renamed function to avoid naming confusion.

* Migrated to usage of selectors and memo in list component.

* Added explicit return types.

* Changed to use server schema for service parameter.

* Removed some over generalisation in types.

* Renamed types and properties related to trusted apps page state.

* Renamed types and properties related to trusted apps page state.

* Renamed the action type to be namespaced to trusted apps.

* Merged the exports and declarations in reducer and used constants for defaults.

* Memoization of pagination data structure.

* Used a shared constant for REST API path.

* Improvements and consistency on pagination across tabs.

* Added a bit more typing and used Partial<>

* Made constants readonly and added some useMemo usages.

* Fixed extracting page index from URI.

* Fixed the case of infinite refreshes when there is loading failure (need to rethink a bit conditions when to refresh).

* Resetting state to initial when we navigate away from trusted apps list.

* Fixed mapping page index to the table pagination.

* Changed to using AppAction in reducer.

* Made ServerApiError a default error type for data binding.

* Renamed all types related to data binding to resource state.

* Created index file for state types.

* Fixed parameter extracting code to meet expectations of endpoints list behavior.

* Updated snapshot.

* Changed middleware to only use selectors.

* Added tests for routing.

* Added documentation to the types in async resource state module.

* Added tests for async resource state module.

* Added tests for store selectors.

* Added tests for reducer.

* Moved around imports.

* Added tests for the middleware.

* Added list component tests.

* Removed a redundant function.

* Commiting snapshots.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Endpoint Elastic Endpoint feature release_note:skip Skip the PR/issue when compiling release notes v7.10.0 v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants