@devx-commerce/plugin-loyalty
Version:
A starter for Medusa plugins.
27 lines • 2.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.applyReferralWorkflow = void 0;
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
const validate_referral_1 = require("./steps/validate-referral");
const apply_referral_1 = require("./steps/apply-referral");
const get_event_1 = require("../cart/steps/get-event");
exports.applyReferralWorkflow = (0, workflows_sdk_1.createWorkflow)("apply-referral", (input) => {
const event = (0, get_event_1.getEventStep)({
eventName: input.event,
});
const validation = (0, validate_referral_1.validateReferralStep)({
referral_code: input.referral_code,
customer_id: input.customer_id,
});
// Only apply the bonus if the referral is valid
const bonusResult = (0, workflows_sdk_1.when)(validation, (v) => v.valid).then(() => {
return (0, apply_referral_1.applyReferralBonusStep)({
event: event,
referral: validation.referral,
customer_id: input.customer_id,
});
});
const result = (0, workflows_sdk_1.transform)({ bonusResult }, (data) => data.bonusResult);
return new workflows_sdk_1.WorkflowResponse(result);
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHktcmVmZXJyYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3JlZmVycmFsL2FwcGx5LXJlZmVycmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUsyQztBQUUzQyxpRUFBaUU7QUFDakUsMkRBQWdFO0FBSWhFLHVEQUF1RDtBQU8xQyxRQUFBLHFCQUFxQixHQUFHLElBQUEsOEJBQWMsRUFDakQsZ0JBQWdCLEVBQ2hCLENBQUMsS0FBb0IsRUFBRSxFQUFFO0lBQ3ZCLE1BQU0sS0FBSyxHQUFHLElBQUEsd0JBQVksRUFBQztRQUN6QixTQUFTLEVBQUUsS0FBSyxDQUFDLEtBQUs7S0FDdkIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxVQUFVLEdBQUcsSUFBQSx3Q0FBb0IsRUFBQztRQUN0QyxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7UUFDbEMsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO0tBQy9CLENBQUMsQ0FBQztJQUVILGdEQUFnRDtJQUNoRCxNQUFNLFdBQVcsR0FBRyxJQUFBLG9CQUFJLEVBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUM3RCxPQUFPLElBQUEsdUNBQXNCLEVBQUM7WUFDNUIsS0FBSyxFQUFFLEtBQXVDO1lBQzlDLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBNkM7WUFDbEUsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1NBQy9CLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxNQUFNLEdBQUcsSUFBQSx5QkFBUyxFQUFDLEVBQUUsV0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUV0RSxPQUFPLElBQUksZ0NBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdEMsQ0FBQyxDQUNGLENBQUMifQ==