Skip to content

Commit

Permalink
Merge pull request #90 from multinet-app/alt-text
Browse files Browse the repository at this point in the history
Add generateAltText function
  • Loading branch information
JakeWags authored Sep 26, 2023
2 parents 0fe3da5 + 897f576 commit 785caac
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
19 changes: 19 additions & 0 deletions src/axios.ts
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ export interface MultinetAxiosInstance extends AxiosInstance {
updateSession(workspace: string, sessionId: number, type: 'network' | 'table', state: object): AxiosPromise<any>;
renameSession(workspace: string, sessionId: number, type: 'network' | 'table', name: string): AxiosPromise<any>;
getSession(workspace: string, sessionId: number, type: 'network' | 'table'): AxiosPromise<any>;
generateAltText(verbosity: string, level: number, explain: string, data: object, title?: string): AxiosPromise<any>;
}

export function multinetAxiosInstance(config: AxiosRequestConfig): MultinetAxiosInstance {
Expand Down Expand Up @@ -268,5 +269,23 @@ export function multinetAxiosInstance(config: AxiosRequestConfig): MultinetAxios
return this.get(`workspaces/${workspace}/sessions/${type}/${sessionId}/`);
};

Proto.generateAltText = function(verbosity: string, level: number, explain: string, data: object, title?: string): AxiosPromise<any> {
const jsonString = JSON.stringify(data);
const blob = new Blob([jsonString], { type: 'application/json' });
const file = new File([blob], 'data.json');

const formData = new FormData();

formData.append('verbosity', verbosity);
formData.append('level', level.toString());
formData.append('explain', explain);
formData.append('data', file);
if (title) {
formData.append('title', title);
}

return this.post(`alttxt/`, formData);
};

return axiosInstance as MultinetAxiosInstance;
}
4 changes: 4 additions & 0 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,10 @@ class MultinetAPI {
public async getSession(workspace: string, sessionId: number, type: 'network' | 'table'): Promise<any> {
return (await this.axios.getSession(workspace, sessionId, type)).data;
}

public async generateAltText(verbosity: string, level: number, explain: string, data: object, title?: string): Promise<any> {
return (await this.axios.generateAltText(verbosity, level, explain, data, title)).data;
}
}

export function multinetApi(baseURL: string): MultinetAPI {
Expand Down

0 comments on commit 785caac

Please sign in to comment.