46 lines
883 B
JavaScript
46 lines
883 B
JavaScript
/**
|
|
* @param {any} result
|
|
* @returns {import("$types/status").Error | null}
|
|
*/
|
|
export function getError(result) {
|
|
if ('error' in result) {
|
|
return result;
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* @param {any} result
|
|
* @returns {import("$types/status").Success | null}
|
|
*/
|
|
export function getSuccess(result) {
|
|
if ('success' in result) {
|
|
return result;
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* @template T
|
|
* @param {any} result
|
|
* @param {function(import("$types/status").Error): T} callback
|
|
* @returns {T | undefined}
|
|
*/
|
|
export function runIfError(result, callback) {
|
|
if ('error' in result) {
|
|
return callback(result);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @template T
|
|
* @param {any} result
|
|
* @param {function(import("$types/status").Success): T} callback
|
|
* @returns {T | undefined}
|
|
*/
|
|
export function runIfSuccess(result, callback) {
|
|
if ('success' in result) {
|
|
return callback(result);
|
|
}
|
|
}
|