feat(jslib): add vault options functions
parent
d8fa68f558
commit
587917fb3f
|
@ -259,4 +259,34 @@ export class UpEndApi {
|
|||
await this.wasmExtensions.init();
|
||||
return this.wasmExtensions.components_to_addr(components);
|
||||
}
|
||||
|
||||
public async getVaultOptions(): Promise<VaultOptions> {
|
||||
const response = await fetch(`${this.apiUrl}/options`);
|
||||
return await response.json();
|
||||
}
|
||||
|
||||
public async setVaultOptions(options: VaultOptions): Promise<void> {
|
||||
const payload: Record<string, unknown> = {};
|
||||
|
||||
if (options.blob_mode) {
|
||||
const blob_mode: Record<string, unknown> = {};
|
||||
blob_mode[options.blob_mode] = null;
|
||||
payload["blob_mode"] = blob_mode;
|
||||
}
|
||||
|
||||
const response = await fetch(`${this.apiUrl}/options`, {
|
||||
method: "PUT",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
body: JSON.stringify(payload),
|
||||
});
|
||||
|
||||
if (!response.ok) {
|
||||
throw Error(await response.text());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export type VaultBlobMode = "Flat" | "Mirror" | "Incoming";
|
||||
export interface VaultOptions {
|
||||
blob_mode: VaultBlobMode;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue