Skip to content

Commit a4464c2

Browse files
authored
[Ingest][Endpoint] Add Ingest rest api response types for use in Endpoint (#63373)
* Added REST Response types to datasouces * Adjust Types in Endpoint to reference those from Ingest * Remove un-used endpoint type
1 parent 7cb3ee4 commit a4464c2

File tree

6 files changed

+36
-36
lines changed

6 files changed

+36
-36
lines changed

x-pack/plugins/endpoint/public/applications/endpoint/store/policy_details/middleware.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
MiddlewareFactory,
99
PolicyData,
1010
PolicyDetailsState,
11-
UpdateDatasourceResponse,
11+
UpdatePolicyResponse,
1212
} from '../../types';
1313
import { policyIdFromParams, isOnPolicyDetailsPage, policyDetails } from './selectors';
1414
import { generatePolicy } from '../../models/policy';
@@ -77,7 +77,7 @@ export const policyDetailsMiddlewareFactory: MiddlewareFactory<PolicyDetailsStat
7777
} else if (action.type === 'userClickedPolicyDetailsSaveButton') {
7878
const { id, revision, ...updatedPolicyItem } = policyDetails(state) as PolicyData;
7979

80-
let apiResponse: UpdateDatasourceResponse;
80+
let apiResponse: UpdatePolicyResponse;
8181
try {
8282
apiResponse = await sendPutDatasource(http, id, updatedPolicyItem);
8383
} catch (error) {

x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/middleware.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* you may not use this file except in compliance with the Elastic License.
55
*/
66

7-
import { MiddlewareFactory, PolicyListState, GetDatasourcesResponse } from '../../types';
7+
import { GetPolicyListResponse, MiddlewareFactory, PolicyListState } from '../../types';
88
import { sendGetEndpointSpecificDatasources } from './services/ingest';
99
import { isOnPolicyListPage, urlSearchParams } from './selectors';
1010

@@ -18,7 +18,7 @@ export const policyListMiddlewareFactory: MiddlewareFactory<PolicyListState> = c
1818

1919
if (action.type === 'userChangedUrl' && isOnPolicyListPage(state)) {
2020
const { page_index: pageIndex, page_size: pageSize } = urlSearchParams(state);
21-
let response: GetDatasourcesResponse;
21+
let response: GetPolicyListResponse;
2222

2323
try {
2424
response = await sendGetEndpointSpecificDatasources(http, {

x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/services/ingest.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import {
1111
} from '../../../../../../../ingest_manager/common';
1212
import {
1313
NewPolicyData,
14-
GetDatasourcesResponse,
15-
GetDatasourceResponse,
16-
UpdateDatasourceResponse,
14+
GetPolicyListResponse,
15+
GetPolicyResponse,
16+
UpdatePolicyResponse,
1717
} from '../../../types';
1818

1919
const INGEST_API_ROOT = `/api/ingest_manager`;
@@ -30,8 +30,8 @@ const INGEST_API_FLEET_AGENT_STATUS = `${INGEST_API_FLEET}/agent-status`;
3030
export const sendGetEndpointSpecificDatasources = (
3131
http: HttpStart,
3232
options: HttpFetchOptions & Partial<GetDatasourcesRequest> = {}
33-
): Promise<GetDatasourcesResponse> => {
34-
return http.get<GetDatasourcesResponse>(INGEST_API_DATASOURCES, {
33+
): Promise<GetPolicyListResponse> => {
34+
return http.get<GetPolicyListResponse>(INGEST_API_DATASOURCES, {
3535
...options,
3636
query: {
3737
...options.query,
@@ -53,7 +53,7 @@ export const sendGetDatasource = (
5353
datasourceId: string,
5454
options?: HttpFetchOptions
5555
) => {
56-
return http.get<GetDatasourceResponse>(`${INGEST_API_DATASOURCES}/${datasourceId}`, options);
56+
return http.get<GetPolicyResponse>(`${INGEST_API_DATASOURCES}/${datasourceId}`, options);
5757
};
5858

5959
/**
@@ -69,7 +69,7 @@ export const sendPutDatasource = (
6969
datasourceId: string,
7070
datasource: NewPolicyData,
7171
options: Exclude<HttpFetchOptions, 'body'> = {}
72-
): Promise<UpdateDatasourceResponse> => {
72+
): Promise<UpdatePolicyResponse> => {
7373
return http.put(`${INGEST_API_DATASOURCES}/${datasourceId}`, {
7474
...options,
7575
body: JSON.stringify(datasource),

x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/test_mock_utils.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { HttpStart } from 'kibana/public';
88
import { Dispatch } from 'redux';
99
import { INGEST_API_DATASOURCES } from './services/ingest';
1010
import { EndpointDocGenerator } from '../../../../../common/generate_data';
11-
import { AppAction, GetDatasourcesResponse, GlobalState, MiddlewareFactory } from '../../types';
11+
import { AppAction, GetPolicyListResponse, GlobalState, MiddlewareFactory } from '../../types';
1212

1313
const generator = new EndpointDocGenerator('policy-list');
1414

@@ -19,13 +19,13 @@ const generator = new EndpointDocGenerator('policy-list');
1919
*/
2020
export const setPolicyListApiMockImplementation = (
2121
mockedHttpService: jest.Mocked<HttpStart>,
22-
responseItems: GetDatasourcesResponse['items'] = [generator.generatePolicyDatasource()]
22+
responseItems: GetPolicyListResponse['items'] = [generator.generatePolicyDatasource()]
2323
): void => {
2424
mockedHttpService.get.mockImplementation((...args) => {
2525
const [path] = args;
2626
if (typeof path === 'string') {
2727
if (path === INGEST_API_DATASOURCES) {
28-
return Promise.resolve<GetDatasourcesResponse>({
28+
return Promise.resolve<GetPolicyListResponse>({
2929
items: responseItems,
3030
total: 10,
3131
page: 1,

x-pack/plugins/endpoint/public/applications/endpoint/types.ts

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,14 @@ import {
1717
import { EndpointPluginStartDependencies } from '../../plugin';
1818
import { AppAction } from './store/action';
1919
import { CoreStart } from '../../../../../../src/core/public';
20-
import { Datasource, NewDatasource } from '../../../../ingest_manager/common/types/models';
2120
import {
21+
Datasource,
22+
NewDatasource,
2223
GetAgentStatusResponse,
23-
CreateDatasourceResponse,
24-
} from '../../../../ingest_manager/common/types/rest_spec';
24+
GetDatasourcesResponse,
25+
GetOneDatasourceResponse,
26+
UpdateDatasourceResponse,
27+
} from '../../../../ingest_manager/common';
2528

2629
export { AppAction };
2730
export type MiddlewareFactory<S = GlobalState> = (
@@ -335,24 +338,14 @@ export interface AlertingIndexUIQueryParams {
335338
filters?: string;
336339
}
337340

338-
export interface GetDatasourcesResponse {
341+
export interface GetPolicyListResponse extends GetDatasourcesResponse {
339342
items: PolicyData[];
340-
total: number;
341-
page: number;
342-
perPage: number;
343-
success: boolean;
344343
}
345344

346-
export interface GetDatasourceResponse {
345+
export interface GetPolicyResponse extends GetOneDatasourceResponse {
347346
item: PolicyData;
348-
success: boolean;
349347
}
350348

351-
export type UpdateDatasourceResponse = CreateDatasourceResponse & {
349+
export interface UpdatePolicyResponse extends UpdateDatasourceResponse {
352350
item: PolicyData;
353-
};
354-
355-
/**
356-
* The PageId type is used for the payload when firing userNavigatedToPage actions
357-
*/
358-
export type PageId = 'alertsPage' | 'managementPage' | 'policyListPage';
351+
}

x-pack/plugins/ingest_manager/common/types/rest_spec/datasource.ts

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,22 @@ export interface GetDatasourcesRequest {
1313
};
1414
}
1515

16+
export interface GetDatasourcesResponse {
17+
items: Datasource[];
18+
total: number;
19+
page: number;
20+
perPage: number;
21+
success: boolean;
22+
}
23+
1624
export interface GetOneDatasourceRequest {
1725
params: {
1826
datasourceId: string;
1927
};
2028
}
2129

22-
export interface GetDatasourcesResponse {
23-
items: Datasource[];
24-
total: number;
25-
page: number;
26-
perPage: number;
30+
export interface GetOneDatasourceResponse {
31+
item: Datasource;
2732
success: boolean;
2833
}
2934

@@ -40,6 +45,8 @@ export type UpdateDatasourceRequest = GetOneDatasourceRequest & {
4045
body: NewDatasource;
4146
};
4247

48+
export type UpdateDatasourceResponse = CreateDatasourceResponse;
49+
4350
export interface DeleteDatasourcesRequest {
4451
body: {
4552
datasourceIds: string[];

0 commit comments

Comments
 (0)