[ENDPOINT] First version of the trusted apps list.#76304
[ENDPOINT] First version of the trusted apps list.#76304efreeti merged 39 commits intoelastic:masterfrom
Conversation
...k/plugins/security_solution/public/management/pages/trusted_apps/state/async_data_binding.ts
Outdated
Show resolved
Hide resolved
...k/plugins/security_solution/public/management/pages/trusted_apps/state/async_data_binding.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/store/selectors.ts
Outdated
Show resolved
Hide resolved
paul-tavares
left a comment
There was a problem hiding this comment.
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.
x-pack/plugins/security_solution/public/management/common/routing.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/common/routing.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/service/index.ts
Show resolved
Hide resolved
...k/plugins/security_solution/public/management/pages/trusted_apps/state/async_data_binding.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/state/items_page.ts
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/service/index.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/store/reducer.ts
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/store/selectors.ts
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/store/middleware.ts
Outdated
Show resolved
Hide resolved
|
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 |
paul-tavares
left a comment
There was a problem hiding this comment.
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.)
x-pack/plugins/security_solution/public/management/common/constants.ts
Outdated
Show resolved
Hide resolved
| import { HttpStart } from 'kibana/public'; | ||
| import { TRUSTED_APPS_LIST_API } from '../../../../../common/endpoint/constants'; | ||
| import { | ||
| GetTrustedListAppsResponse, |
There was a problem hiding this comment.
😳 I'll correct this. Should have been GetTrustedAppsListResponse
x-pack/plugins/security_solution/public/management/pages/trusted_apps/store/action.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/store/reducer.ts
Outdated
Show resolved
Hide resolved
...ck/plugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.tsx
Outdated
Show resolved
Hide resolved
|
Pinging @elastic/endpoint-management (Team:Endpoint Management) |
|
Pinging @elastic/endpoint-app-team (Feature:Endpoint) |
…bala/trusted-apps-list
💚 Build SucceededBuild metrics@kbn/optimizer bundle module count
async chunks size
page load bundle size
History
To update your PR or re-run it, just comment with: |
kevinlog
left a comment
There was a problem hiding this comment.
👍 lgtm, just want @paul-tavares to thumb as well
paul-tavares
left a comment
There was a problem hiding this comment.
👍
Had a few questions and suggestion, but non that would warrant delaying this merge.
x-pack/plugins/security_solution/public/management/pages/trusted_apps/test_utils/index.ts
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/management/pages/trusted_apps/test_utils/index.ts
Show resolved
Hide resolved
...ugins/security_solution/public/management/pages/trusted_apps/view/trusted_apps_list.test.tsx
Show resolved
Hide resolved
* 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.
* 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) ...
* 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.
Summary
Trusted apps list page.
Checklist
Delete any items that are not applicable to this PR.