fleet/frontend/services/entities/operating_systems.ts
Martavis Parker 384c987389
Removed all traces of Redux from the app! (#5287)
* clean up routes and useless components

* component clean up

* removed redux from routes

* rename file

* moved useDeepEffect hook with others

* removed redux, fleet, app_constants dirs; added types to utilities

* style cleanup

* typo fix

* removed unused ts-ignore comments

* removed redux packages!!!

* formatting

* fixed typing for simple search function

* updated frontend readme
2022-04-22 09:45:35 -07:00

40 lines
1,016 B
TypeScript

/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
import sendRequest from "services";
import endpoints from "utilities/endpoints";
import { IOperatingSystemVersion } from "interfaces/operating_system";
import { IOsqueryPlatform } from "interfaces/platform";
export interface IOperatingSystemsResponse {
counts_updated_at: string;
os_versions: IOperatingSystemVersion[];
}
interface IGetOperatingSystemProps {
platform: IOsqueryPlatform;
teamId?: number;
}
export default {
getVersions: async ({
platform,
teamId,
}: IGetOperatingSystemProps): Promise<IOperatingSystemsResponse> => {
const { OS_VERSIONS } = endpoints;
let path = OS_VERSIONS;
const queryParams = [`platform=${platform}`];
if (teamId) {
queryParams.push(`team_id=${teamId}`);
}
const queryString = `?${queryParams.join("&")}`;
path += queryString;
try {
return sendRequest("GET", path);
} catch (error) {
return Promise.reject(error);
}
},
};