Packages
plinth
0.5.8
0.10.2
0.10.1
0.10.0
0.9.3
0.9.2
0.9.1
0.9.0
0.8.2
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.1
0.6.0
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.15
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.0
0.2.0
0.1.13
0.1.12
0.1.11
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
Bindings to Node.js and browser platform APIs
Current section
Files
Jump to
Current section
Files
src/plinth_browser_storage_ffi.mjs
import { Ok, Error } from "./gleam.mjs";
export function getStorage() {
const storage = globalThis?.navigator?.storage
if (globalThis.StorageManager && storage instanceof StorageManager) {
return new Ok(storage)
} else {
return new Error()
}
}
export async function estimate(storageManager) {
try {
const { quota, usage } = await storageManager.estimate()
return new Ok([quota, usage])
} catch (error) {
return new Error(`${error}`)
}
}
export async function getDirectory(storageManager) {
try {
return new Ok(await storageManager.getDirectory())
} catch (error) {
return new Error(`${error}`)
}
}
export async function persist(storageManager) {
try {
return new Ok(await storageManager.persist())
} catch (error) {
return new Error(`${error}`)
}
}
export async function persisted(storageManager) {
try {
return new Ok(await storageManager.persisted())
} catch (error) {
return new Error(`${error}`)
}
}