medusa-bonuses-plugin
Version:
medusa-bonuses-plugin is a Medusa plugin that adds bonus program to Medusa ecommerce stores.
47 lines • 3.23 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const awilix_1 = require("awilix");
const bonus_1 = __importDefault(require("./services/bonus"));
const customer_1 = __importDefault(require("./subscribers/customer"));
const order_1 = __importDefault(require("./subscribers/order"));
exports.default = async (container, config) => {
try {
// Регистрируем сервис
container.register({
bonusService: (0, awilix_1.asClass)(bonus_1.default).singleton()
});
// Регистрируем подписчики
container.register({
customerBonusSubscriber: (0, awilix_1.asClass)(customer_1.default).singleton(),
orderBonusSubscriber: (0, awilix_1.asClass)(order_1.default).singleton()
});
console.log("✅ Bonus plugin loaded successfully");
}
catch (error) {
console.error("❌ Error loading bonus plugin:", error);
throw error;
}
};
// Экспортируем типы для использования в других частях приложения
__exportStar(require("./models/bonus-account"), exports);
__exportStar(require("./models/bonus-transaction"), exports);
__exportStar(require("./models/bonus-settings"), exports);
__exportStar(require("./services/bonus"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUFnQztBQUNoQyw2REFBMkM7QUFDM0Msc0VBQXVEO0FBQ3ZELGdFQUFpRDtBQUVqRCxrQkFBZSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFO0lBQ3pDLElBQUksQ0FBQztRQUNILHNCQUFzQjtRQUN0QixTQUFTLENBQUMsUUFBUSxDQUFDO1lBQ2pCLFlBQVksRUFBRSxJQUFBLGdCQUFPLEVBQUMsZUFBWSxDQUFDLENBQUMsU0FBUyxFQUFFO1NBQ2hELENBQUMsQ0FBQTtRQUVGLDBCQUEwQjtRQUMxQixTQUFTLENBQUMsUUFBUSxDQUFDO1lBQ2pCLHVCQUF1QixFQUFFLElBQUEsZ0JBQU8sRUFBQyxrQkFBa0IsQ0FBQyxDQUFDLFNBQVMsRUFBRTtZQUNoRSxvQkFBb0IsRUFBRSxJQUFBLGdCQUFPLEVBQUMsZUFBZSxDQUFDLENBQUMsU0FBUyxFQUFFO1NBQzNELENBQUMsQ0FBQTtRQUVGLE9BQU8sQ0FBQyxHQUFHLENBQUMsb0NBQW9DLENBQUMsQ0FBQTtJQUNuRCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDckQsTUFBTSxLQUFLLENBQUE7SUFDYixDQUFDO0FBQ0gsQ0FBQyxDQUFBO0FBRUQsaUVBQWlFO0FBQ2pFLHlEQUFzQztBQUN0Qyw2REFBMEM7QUFDMUMsMERBQXVDO0FBQ3ZDLG1EQUFnQyJ9