mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) Add attachment and data size usage
Summary: Adds attachment and data size to the usage section of the raw data page. Also makes in-document usage banners update as user actions are applied, causing them to be hidden/shown or updated based on the current state of the document. Test Plan: Browser tests. Reviewers: jarek Reviewed By: jarek Subscribers: alexmojaki Differential Revision: https://phab.getgrist.com/D3395
This commit is contained in:
@@ -935,3 +935,16 @@ export function assertIsDefined<T>(name: string, value: T): asserts value is Non
|
||||
throw new Error(`Expected '${name}' to be defined, but received ${value}`);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Calls function `fn`, passes any thrown errors to function `recover`, and finally calls `fn`
|
||||
* once more if `recover` doesn't throw.
|
||||
*/
|
||||
export async function retryOnce<T>(fn: () => Promise<T>, recover: (e: unknown) => Promise<void>): Promise<T> {
|
||||
try {
|
||||
return await fn();
|
||||
} catch (e) {
|
||||
await recover(e);
|
||||
return await fn();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user