@beignet/core
Version:
Core framework primitives for Beignet
18 lines • 671 B
JavaScript
/**
* List the declared 2xx statuses of a contract at runtime.
*/
export function getSuccess2xxStatuses(contract) {
return Object.keys(contract.responses)
.map((status) => Number(status))
.filter((status) => Number.isInteger(status) && status >= 200 && status < 300)
.sort((a, b) => a - b);
}
/**
* Resolve the sole declared 2xx status of a contract, or `undefined` when the
* contract declares zero or multiple 2xx statuses.
*/
export function inferSoleSuccessStatus(contract) {
const statuses = getSuccess2xxStatuses(contract);
return statuses.length === 1 ? statuses[0] : undefined;
}
//# sourceMappingURL=success-status.js.map