feat(housekeeping): deliver economy vertical
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
import "server-only";
|
||||
|
||||
import { executeEconomyCatalogMutation } from "./mutation-runtime-catalog";
|
||||
import { executeEconomyDatabaseMutation } from "./mutation-runtime-commerce";
|
||||
import { executeEconomyRewardsMutation } from "./mutation-runtime-rewards";
|
||||
import type {
|
||||
EconomyMutationContext,
|
||||
EconomyMutationOperation,
|
||||
EconomyMutationSnapshot,
|
||||
} from "./mutations";
|
||||
import { EconomyMutationFailure } from "./mutations";
|
||||
|
||||
export async function executeEconomyMutationOperation(
|
||||
operation: EconomyMutationOperation,
|
||||
input: unknown,
|
||||
context: EconomyMutationContext,
|
||||
transaction?: unknown,
|
||||
): Promise<EconomyMutationSnapshot> {
|
||||
const databaseResult = await executeEconomyDatabaseMutation(
|
||||
operation,
|
||||
input,
|
||||
context,
|
||||
transaction,
|
||||
);
|
||||
if (databaseResult) return databaseResult;
|
||||
const catalogResult = await executeEconomyCatalogMutation(
|
||||
operation,
|
||||
input,
|
||||
context,
|
||||
);
|
||||
if (catalogResult) return catalogResult;
|
||||
const rewardsResult = await executeEconomyRewardsMutation(
|
||||
operation,
|
||||
input,
|
||||
context,
|
||||
);
|
||||
if (rewardsResult) return rewardsResult;
|
||||
throw new EconomyMutationFailure(
|
||||
"VALIDATION",
|
||||
"errors.housekeeping.validation",
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user