MCPcopy Index your code
hub / github.com/Packstack-Tech/packstack / Item

Class Item

frontend/src/lib/api/item.ts:7–45  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5import { Item as ItemPayload } from "types/item";
6
7export default class Item implements ItemService {
8 private api: Api;
9 private baseUrl = '/item';
10
11 constructor(baseApi: Api) {
12 this.api = baseApi;
13 }
14
15 get: Get = (itemId?: number) => {
16 return this.api.get(`${this.baseUrl}`, { params: { itemId } })
17 .then((resp: AxiosResponse<ItemPayload[]>) => resp.data)
18 };
19
20 create: Create = item => {
21 return this.api.post(`${this.baseUrl}`, item)
22 .then((resp: AxiosResponse<ItemPayload>) => resp.data)
23 };
24
25 update: Update = item => {
26 return this.api.put(`${this.baseUrl}`, item)
27 .then((resp: AxiosResponse<ItemPayload>) => resp.data)
28 };
29
30 delete: Delete = (itemId: number) => {
31 return this.api.post(`${this.baseUrl}/delete`, { itemId })
32 .then((resp: AxiosResponse<number>) => resp.data)
33 };
34
35 uploadCSV: UploadCSV = (file: FormData) => {
36 return this.api.post(`${this.baseUrl}/upload`, file,
37 { headers: { 'Content-Type': 'application/x-www-form-urlencoded' } })
38 .then((resp: AxiosResponse<ItemPayload[]>) => resp.data)
39 };
40
41 exportCSV: ExportCSV = () => {
42 return this.api.get(`${this.baseUrl}/export`)
43 .then((resp: AxiosResponse<File>) => resp.data);
44 }
45}

Callers

nothing calls this directly

Calls 3

getMethod · 0.80
postMethod · 0.80
putMethod · 0.80

Tested by

no test coverage detected