diff --git a/app/client/src/api/ActionAPI.tsx b/app/client/src/api/ActionAPI.tsx new file mode 100644 index 0000000000..57cd3d4eff --- /dev/null +++ b/app/client/src/api/ActionAPI.tsx @@ -0,0 +1,60 @@ +import Api, { HttpMethod } from "./Api" +import { ContainerWidgetProps } from "../widgets/ContainerWidget" +import { ApiResponse } from "./ApiResponses" +import { APIRequest } from './ApiRequests'; + +export interface CreateActionRequest extends APIRequest { + resourceId: string + actionConfiguration: T +} + +export interface UpdateActionRequest extends CreateActionRequest { + actionId: string +} + +export interface APIConfig { + requestHeaders: Record + method: HttpMethod + path: string + APIName: string + body: JSON + queryParams: Record +} + +export interface QueryConfig { + queryString: string +} + +export interface PageResponse extends ApiResponse { + pageWidget: ContainerWidgetProps; +} + +export interface SavePageResponse { + pageId: string; +} + +class ActionAPI extends Api { + static url = "/actions" + + static createAPI(createAPI: CreateActionRequest): Promise { + return Api.post(ActionAPI.url, createAPI) + } + + static updateAPI(updateAPI: UpdateActionRequest): Promise { + return Api.post(ActionAPI.url, updateAPI) + } + + static createQuery(createQuery: CreateActionRequest): Promise { + return Api.post(ActionAPI.url, createQuery) + } + + static updateQuery(updateQuery: UpdateActionRequest): Promise { + return Api.post(ActionAPI.url, updateQuery) + } + +} + + + + +export default ActionAPI diff --git a/app/client/src/api/ApiRequests.tsx b/app/client/src/api/ApiRequests.tsx index 8ddc4f0cdf..c3318d44ca 100644 --- a/app/client/src/api/ApiRequests.tsx +++ b/app/client/src/api/ApiRequests.tsx @@ -1,5 +1,4 @@ import { ContentType, DataType, EncodingType } from "../constants/ApiConstants"; -import { HttpMethod } from './Api'; export interface APIHeaders { Accept: ContentType @@ -11,16 +10,3 @@ export interface APIRequest { } -export interface CreateAPIRequest extends APIRequest { - requestHeaders: Record - method: HttpMethod - baseUrl: string - path: string - APIName: string - body: JSON - queryParams: Record -} - -export interface UpdateAPIRequest extends CreateAPIRequest { - apiId: string -} \ No newline at end of file