2022-01-27 23:00:31 +00:00
|
|
|
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
|
|
import sendRequest from "services";
|
|
|
|
|
|
|
|
import endpoints from "fleet/endpoints";
|
2022-03-10 15:10:44 +00:00
|
|
|
import { IEditScheduledQuery } from "interfaces/scheduled_query";
|
2022-01-27 23:00:31 +00:00
|
|
|
import helpers from "fleet/helpers";
|
|
|
|
|
|
|
|
export default {
|
|
|
|
create: (formData: any) => {
|
|
|
|
const { GLOBAL_SCHEDULE } = endpoints;
|
|
|
|
|
|
|
|
const {
|
|
|
|
interval,
|
|
|
|
logging_type: loggingType,
|
|
|
|
platform,
|
|
|
|
query_id: queryID,
|
|
|
|
shard,
|
|
|
|
version,
|
|
|
|
} = formData;
|
|
|
|
|
|
|
|
const removed = loggingType === "differential";
|
|
|
|
const snapshot = loggingType === "snapshot";
|
|
|
|
|
|
|
|
const params = {
|
|
|
|
interval: Number(interval),
|
|
|
|
platform,
|
|
|
|
query_id: Number(queryID),
|
|
|
|
removed,
|
|
|
|
snapshot,
|
|
|
|
shard: Number(shard),
|
|
|
|
version,
|
|
|
|
};
|
|
|
|
|
|
|
|
return sendRequest("POST", GLOBAL_SCHEDULE, params);
|
|
|
|
},
|
|
|
|
destroy: ({ id }: { id: number }) => {
|
|
|
|
const { GLOBAL_SCHEDULE } = endpoints;
|
|
|
|
const path = `${GLOBAL_SCHEDULE}/${id}`;
|
|
|
|
|
|
|
|
return sendRequest("DELETE", path);
|
|
|
|
},
|
|
|
|
loadAll: () => {
|
|
|
|
const { GLOBAL_SCHEDULE } = endpoints;
|
|
|
|
const path = GLOBAL_SCHEDULE;
|
|
|
|
|
|
|
|
return sendRequest("GET", path);
|
|
|
|
},
|
|
|
|
update: (
|
2022-03-10 15:10:44 +00:00
|
|
|
globalScheduledQuery: IEditScheduledQuery,
|
2022-01-27 23:00:31 +00:00
|
|
|
updatedAttributes: any
|
|
|
|
) => {
|
|
|
|
const { GLOBAL_SCHEDULE } = endpoints;
|
|
|
|
const path = `${GLOBAL_SCHEDULE}/${globalScheduledQuery.id}`;
|
|
|
|
const params = helpers.formatScheduledQueryForServer(updatedAttributes);
|
|
|
|
|
|
|
|
return sendRequest("PATCH", path, params);
|
|
|
|
},
|
|
|
|
};
|