diff --git a/api/config/edge.ts b/api/config/edge.ts index 032e0881..a7b0dff4 100644 --- a/api/config/edge.ts +++ b/api/config/edge.ts @@ -27,6 +27,8 @@ const config: ConfigFile = { 'getImageSetViewByID', 'getAllImageSetImagesView', 'getImageSetsDevicesByID', + 'deleteImageSet', + 'getImageSetImageView', ], }; diff --git a/api/schema/edge.json b/api/schema/edge.json index 3bfa3daf..b9f5004c 100644 --- a/api/schema/edge.json +++ b/api/schema/edge.json @@ -3227,7 +3227,7 @@ { "description": "the image set id", "in": "path", - "name": "image_set_id", + "name": "imageSetID", "required": true, "schema": { "type": "integer" @@ -3236,7 +3236,7 @@ { "description": "the image id", "in": "path", - "name": "image_id", + "name": "imageID", "required": true, "schema": { "type": "integer" @@ -3465,7 +3465,7 @@ { "description": "Identifier of the ImageSet", "in": "path", - "name": "ImageSetId", + "name": "imageSetID", "required": true, "schema": { "type": "integer" diff --git a/src/store/edgeApi.ts b/src/store/edgeApi.ts index a9ed486c..fad55f8f 100644 --- a/src/store/edgeApi.ts +++ b/src/store/edgeApi.ts @@ -32,6 +32,14 @@ const injectedRtkApi = api.injectEndpoints({ }, }), }), + getImageSetImageView: build.query< + GetImageSetImageViewApiResponse, + GetImageSetImageViewApiArg + >({ + query: (queryArg) => ({ + url: `/image-sets/view/${queryArg.imageSetId}/versions/${queryArg.imageId}`, + }), + }), getAllImageSetImagesView: build.query< GetAllImageSetImagesViewApiResponse, GetAllImageSetImagesViewApiArg @@ -47,6 +55,15 @@ const injectedRtkApi = api.injectEndpoints({ }, }), }), + deleteImageSet: build.mutation< + DeleteImageSetApiResponse, + DeleteImageSetApiArg + >({ + query: (queryArg) => ({ + url: `/image-sets/${queryArg.imageSetId}`, + method: "DELETE", + }), + }), getAllImages: build.query({ query: (queryArg) => ({ url: `/images`, @@ -172,6 +189,14 @@ export type GetImageSetsViewApiArg = { /** field: return number of image-set view beginning at the offset. */ offset?: number; }; +export type GetImageSetImageViewApiResponse = + /** status 200 OK */ ModelsImageSetImageIdViewApi; +export type GetImageSetImageViewApiArg = { + /** the image set id */ + imageSetId: number; + /** the image id */ + imageId: number; +}; export type GetAllImageSetImagesViewApiResponse = /** status 200 OK */ ModelsImagesViewDataApi; export type GetAllImageSetImagesViewApiArg = { @@ -188,6 +213,11 @@ export type GetAllImageSetImagesViewApiArg = { /** field: return number of images beginning at the offset. */ offset?: number; }; +export type DeleteImageSetApiResponse = /** status 200 OK */ ModelsImageSetApi; +export type DeleteImageSetApiArg = { + /** Identifier of the ImageSet */ + imageSetId: number; +}; export type GetAllImagesApiResponse = /** status 200 OK */ ModelsSuccessPlaceholderResponse; export type GetAllImagesApiArg = { @@ -436,6 +466,19 @@ export type ModelsImageSetsViewResponseApi = { count?: number; data?: ModelsImageSetView[]; }; +export type ModelsImageDetailApi = { + additional_packages?: number; + image?: ModelsImage; + packages?: number; + update_added?: number; + update_removed?: number; + update_updated?: number; +}; +export type ModelsImageSetImageIdViewApi = { + ImageBuildIsoURL?: string; + ImageDetails?: ModelsImageDetailApi; + ImageSet?: ModelsImageSetApi; +}; export type ModelsImageView = { CommitCheckSum?: string; CreatedAt?: ModelsEdgeApiTime; @@ -482,7 +525,9 @@ export type CreateImage = object; export const { useListAllImageSetsQuery, useGetImageSetsViewQuery, + useGetImageSetImageViewQuery, useGetAllImageSetImagesViewQuery, + useDeleteImageSetMutation, useGetAllImagesQuery, useCreateImageMutation, useCheckImageNameMutation,