Skip to content

Commit

Permalink
Fit plot data fetch; Expose plot data getter
Browse files Browse the repository at this point in the history
  • Loading branch information
nx10 committed Sep 22, 2021
1 parent be883a4 commit e004dff
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 10 deletions.
21 changes: 11 additions & 10 deletions src/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ function make_headers(b: HttpgdBackend): Headers {
return headers;
}

async function fetch_url<ResponseType>(
async function fetch_json<ResponseType>(
b: HttpgdBackend,
url: string
): Promise<ResponseType> {
Expand Down Expand Up @@ -74,7 +74,7 @@ export function url_state(b: HttpgdBackend): string {
* @returns Response promise
*/
export function fetch_state(b: HttpgdBackend): Promise<HttpgdStateResponse> {
return fetch_url<HttpgdStateResponse>(b, url_state(b));
return fetch_json<HttpgdStateResponse>(b, url_state(b));
}

// /clear
Expand All @@ -96,7 +96,7 @@ export function url_clear(b: HttpgdBackend): string {
* @returns Response promise
*/
export function fetch_clear(b: HttpgdBackend): Promise<HttpgdStateResponse> {
return fetch_url<HttpgdStateResponse>(b, url_clear(b));
return fetch_json<HttpgdStateResponse>(b, url_clear(b));
}

// /renderers
Expand All @@ -120,7 +120,7 @@ export function url_renderers(b: HttpgdBackend): string {
export function fetch_renderers(
b: HttpgdBackend
): Promise<HttpgdRenderersResponse> {
return fetch_url<HttpgdRenderersResponse>(b, url_renderers(b));
return fetch_json<HttpgdRenderersResponse>(b, url_renderers(b));
}

// /plots
Expand All @@ -142,7 +142,7 @@ export function url_plots(b: HttpgdBackend): string {
* @returns Response promise
*/
export function fetch_plots(b: HttpgdBackend): Promise<HttpgdPlotsResponse> {
return fetch_url<HttpgdPlotsResponse>(b, url_plots(b));
return fetch_json<HttpgdPlotsResponse>(b, url_plots(b));
}

// /plot
Expand Down Expand Up @@ -187,10 +187,11 @@ export function url_plot(
export function fetch_plot(
b: HttpgdBackend,
r: HttpgdPlotRequest
// eslint-disable-next-line @typescript-eslint/no-explicit-any
): Promise<any> {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
return fetch_url<any>(b, url_plot(b, r));
): Promise<Response> {
const res = fetch(url_plot(b, r), {
headers: make_headers(b)
});
return res;
}

// /remove
Expand Down Expand Up @@ -219,5 +220,5 @@ export function fetch_remove(
b: HttpgdBackend,
r: HttpgdRemoveRequest
): Promise<HttpgdStateResponse> {
return fetch_url<HttpgdStateResponse>(b, url_remove(b, r));
return fetch_json<HttpgdStateResponse>(b, url_remove(b, r));
}
11 changes: 11 additions & 0 deletions src/httpgd.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import {
fetch_clear,
fetch_plot,
fetch_plots,
fetch_remove,
fetch_renderers,
Expand Down Expand Up @@ -148,6 +149,16 @@ export class Httpgd {
: undefined;
}

/**
* Get rendered plot data.
*
* @param r Plot request object.
* @returns Plot data
*/
public getPlot(r: HttpgdPlotRequest): Promise<Response> | undefined {
return this.data.plots ? fetch_plot(this.backend, r) : undefined;
}

/**
* Listen to plot changes.
*
Expand Down

0 comments on commit e004dff

Please sign in to comment.