refactor(housekeeping): reuse request capability context
This commit is contained in:
1 parent
cc6bb9a9a3
commit
edc165ba8d
5 files changed
+134
-8
No files matched your search
@@ -0,0 +1,19 @@
|
||||
import { satisfiesCapability } from "./capability-context";
|
||||
import type {
|
||||
CapabilityRequirement,
|
||||
HousekeepingCapabilityContext,
|
||||
HousekeepingResult,
|
||||
} from "./contracts";
|
||||
import { fail, ok } from "./contracts";
|
||||
import { createCorrelationId } from "./correlation";
|
||||
|
||||
export function authorizeHousekeeping(
|
||||
context: HousekeepingCapabilityContext,
|
||||
requirement: CapabilityRequirement,
|
||||
): HousekeepingResult<HousekeepingCapabilityContext> {
|
||||
const correlationId = createCorrelationId();
|
||||
|
||||
return satisfiesCapability(context, requirement)
|
||||
? ok(context, correlationId)
|
||||
: fail("FORBIDDEN", "errors.housekeeping.forbidden", correlationId);
|
||||
}
|
||||
Reference in new issue
Block a user