@lodashventure/medusa-notification-webhook 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.medusa/server/src/modules/event-hook/index.js +13 -0
- package/.medusa/server/src/modules/event-hook/module-options.js +3 -0
- package/.medusa/server/src/modules/event-hook/service.js +16 -0
- package/.medusa/server/src/subscribers/constants/customer-fields.js +14 -0
- package/.medusa/server/src/subscribers/constants/order-fields.js +45 -0
- package/.medusa/server/src/subscribers/constants/quote-fields.js +45 -0
- package/.medusa/server/src/subscribers/order-fulfillment-created.js +51 -0
- package/.medusa/server/src/subscribers/order-pickup-cancelled.js +49 -0
- package/.medusa/server/src/subscribers/order-pickup-created.js +49 -0
- package/.medusa/server/src/subscribers/order-pickup-updated.js +49 -0
- package/.medusa/server/src/subscribers/order-placed.js +51 -0
- package/.medusa/server/src/subscribers/quote-requested.js +51 -0
- package/.medusa/server/src/workflows/call-external-api.js +23 -0
- package/README.md +81 -0
- package/package.json +76 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.EVENT_HOOK_MODULE = void 0;
|
|
7
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
8
|
+
const service_1 = __importDefault(require("./service"));
|
|
9
|
+
exports.EVENT_HOOK_MODULE = "event_hook";
|
|
10
|
+
exports.default = (0, utils_1.Module)(exports.EVENT_HOOK_MODULE, {
|
|
11
|
+
service: service_1.default,
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9ldmVudC1ob29rL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHFEQUFtRDtBQUNuRCx3REFBK0M7QUFFbEMsUUFBQSxpQkFBaUIsR0FBRyxZQUFZLENBQUM7QUFFOUMsa0JBQWUsSUFBQSxjQUFNLEVBQUMseUJBQWlCLEVBQUU7SUFDdkMsT0FBTyxFQUFFLGlCQUFzQjtDQUNoQyxDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9ldmVudC1ob29rL21vZHVsZS1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
4
|
+
class EventHookModuleService extends (0, utils_1.MedusaService)({}) {
|
|
5
|
+
constructor({}, options) {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
this._options = options ?? {
|
|
8
|
+
webHookConfig: {},
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
async getWebHookOptions() {
|
|
12
|
+
return this._options.webHookConfig;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.default = EventHookModuleService;
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2V2ZW50LWhvb2svc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFEQUEwRDtBQUcxRCxNQUFxQixzQkFBdUIsU0FBUSxJQUFBLHFCQUFhLEVBQUMsRUFBRSxDQUFDO0lBR25FLFlBQVksRUFBRSxFQUFFLE9BQXVCO1FBQ3JDLEtBQUssQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO1FBRXBCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxJQUFJO1lBQ3pCLGFBQWEsRUFBRSxFQUFFO1NBQ2xCLENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQjtRQUNyQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQWRELHlDQWNDIn0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.customerFields = void 0;
|
|
4
|
+
exports.customerFields = [
|
|
5
|
+
// customer
|
|
6
|
+
"customer.id",
|
|
7
|
+
"customer.email",
|
|
8
|
+
"customer.phone",
|
|
9
|
+
"customer.has_account",
|
|
10
|
+
"customer.first_name",
|
|
11
|
+
"customer.last_name",
|
|
12
|
+
"customer.company_name",
|
|
13
|
+
];
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL2NvbnN0YW50cy9jdXN0b21lci1maWVsZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxjQUFjLEdBQUc7SUFDNUIsV0FBVztJQUNYLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtJQUN0QixxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLHVCQUF1QjtDQUN4QixDQUFDIn0=
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.orderFields = void 0;
|
|
4
|
+
const query_config_1 = require("@medusajs/medusa/api/admin/orders/query-config");
|
|
5
|
+
exports.orderFields = [
|
|
6
|
+
// ref: https://github.com/medusajs/medusa/blob/v2.4.0/packages/medusa/src/api/admin/orders/query-config.ts
|
|
7
|
+
...query_config_1.defaultAdminOrderFields,
|
|
8
|
+
"region_id",
|
|
9
|
+
"total",
|
|
10
|
+
"subtotal",
|
|
11
|
+
"tax_total",
|
|
12
|
+
"order_change",
|
|
13
|
+
"discount_total",
|
|
14
|
+
"discount_tax_total",
|
|
15
|
+
"original_total",
|
|
16
|
+
"original_tax_total",
|
|
17
|
+
"item_total",
|
|
18
|
+
"item_subtotal",
|
|
19
|
+
"item_tax_total",
|
|
20
|
+
"original_item_total",
|
|
21
|
+
"original_item_subtotal",
|
|
22
|
+
"original_item_tax_total",
|
|
23
|
+
"shipping_total",
|
|
24
|
+
"shipping_subtotal",
|
|
25
|
+
"shipping_tax_total",
|
|
26
|
+
"original_shipping_tax_total",
|
|
27
|
+
"original_shipping_subtotal",
|
|
28
|
+
"original_shipping_total",
|
|
29
|
+
"items",
|
|
30
|
+
"shipping_address",
|
|
31
|
+
"billing_address",
|
|
32
|
+
"shipping_methods.*",
|
|
33
|
+
"shipping_methods.tax_lines",
|
|
34
|
+
"shipping_methods.adjustments",
|
|
35
|
+
"payment_collections",
|
|
36
|
+
// customer
|
|
37
|
+
"customer.id",
|
|
38
|
+
"customer.email",
|
|
39
|
+
"customer.phone",
|
|
40
|
+
"customer.has_account",
|
|
41
|
+
"customer.first_name",
|
|
42
|
+
"customer.last_name",
|
|
43
|
+
"customer.company_name",
|
|
44
|
+
];
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL2NvbnN0YW50cy9vcmRlci1maWVsZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUZBQXlGO0FBRTVFLFFBQUEsV0FBVyxHQUFHO0lBQ3pCLDJHQUEyRztJQUMzRyxHQUFHLHNDQUF1QjtJQUMxQixXQUFXO0lBQ1gsT0FBTztJQUNQLFVBQVU7SUFDVixXQUFXO0lBQ1gsY0FBYztJQUNkLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQixZQUFZO0lBQ1osZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsd0JBQXdCO0lBQ3hCLHlCQUF5QjtJQUN6QixnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLG9CQUFvQjtJQUNwQiw2QkFBNkI7SUFDN0IsNEJBQTRCO0lBQzVCLHlCQUF5QjtJQUN6QixPQUFPO0lBQ1Asa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsNEJBQTRCO0lBQzVCLDhCQUE4QjtJQUM5QixxQkFBcUI7SUFDckIsV0FBVztJQUNYLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtJQUN0QixxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLHVCQUF1QjtDQUN4QixDQUFDIn0=
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.quoteFields = void 0;
|
|
4
|
+
exports.quoteFields = [
|
|
5
|
+
"id",
|
|
6
|
+
"status",
|
|
7
|
+
"cart.id",
|
|
8
|
+
"draft_order.id",
|
|
9
|
+
"draft_order.currency_code",
|
|
10
|
+
"draft_order.display_id",
|
|
11
|
+
"draft_order.region_id",
|
|
12
|
+
"draft_order.status",
|
|
13
|
+
"draft_order.version",
|
|
14
|
+
"draft_order.summary",
|
|
15
|
+
"draft_order.total",
|
|
16
|
+
"draft_order.subtotal",
|
|
17
|
+
"draft_order.tax_total",
|
|
18
|
+
"draft_order.order_change",
|
|
19
|
+
"draft_order.discount_total",
|
|
20
|
+
"draft_order.discount_tax_total",
|
|
21
|
+
"draft_order.original_total",
|
|
22
|
+
"draft_order.original_tax_total",
|
|
23
|
+
"draft_order.item_total",
|
|
24
|
+
"draft_order.item_subtotal",
|
|
25
|
+
"draft_order.item_tax_total",
|
|
26
|
+
"draft_order.original_item_total",
|
|
27
|
+
"draft_order.original_item_subtotal",
|
|
28
|
+
"draft_order.original_item_tax_total",
|
|
29
|
+
"draft_order.shipping_total",
|
|
30
|
+
"draft_order.shipping_subtotal",
|
|
31
|
+
"draft_order.shipping_tax_total",
|
|
32
|
+
"draft_order.original_shipping_tax_total",
|
|
33
|
+
"draft_order.original_shipping_subtotal",
|
|
34
|
+
"draft_order.original_shipping_total",
|
|
35
|
+
"draft_order.created_at",
|
|
36
|
+
"draft_order.updated_at",
|
|
37
|
+
"draft_order.items.*",
|
|
38
|
+
"draft_order.items.tax_lines.*",
|
|
39
|
+
"draft_order.items.adjustments.*",
|
|
40
|
+
"draft_order.items.variant.*",
|
|
41
|
+
"draft_order.items.variant.product.*",
|
|
42
|
+
"draft_order.items.detail.*",
|
|
43
|
+
"draft_order.payment_collections.*",
|
|
44
|
+
];
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVvdGUtZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL2NvbnN0YW50cy9xdW90ZS1maWVsZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxXQUFXLEdBQUc7SUFDekIsSUFBSTtJQUNKLFFBQVE7SUFDUixTQUFTO0lBQ1QsZ0JBQWdCO0lBQ2hCLDJCQUEyQjtJQUMzQix3QkFBd0I7SUFDeEIsdUJBQXVCO0lBQ3ZCLG9CQUFvQjtJQUNwQixxQkFBcUI7SUFDckIscUJBQXFCO0lBQ3JCLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsdUJBQXVCO0lBQ3ZCLDBCQUEwQjtJQUMxQiw0QkFBNEI7SUFDNUIsZ0NBQWdDO0lBQ2hDLDRCQUE0QjtJQUM1QixnQ0FBZ0M7SUFDaEMsd0JBQXdCO0lBQ3hCLDJCQUEyQjtJQUMzQiw0QkFBNEI7SUFDNUIsaUNBQWlDO0lBQ2pDLG9DQUFvQztJQUNwQyxxQ0FBcUM7SUFDckMsNEJBQTRCO0lBQzVCLCtCQUErQjtJQUMvQixnQ0FBZ0M7SUFDaEMseUNBQXlDO0lBQ3pDLHdDQUF3QztJQUN4QyxxQ0FBcUM7SUFDckMsd0JBQXdCO0lBQ3hCLHdCQUF3QjtJQUN4QixxQkFBcUI7SUFDckIsK0JBQStCO0lBQy9CLGlDQUFpQztJQUNqQyw2QkFBNkI7SUFDN0IscUNBQXFDO0lBQ3JDLDRCQUE0QjtJQUM1QixtQ0FBbUM7Q0FDcEMsQ0FBQyJ9
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.config = void 0;
|
|
7
|
+
exports.default = orderFulfillmentCreatedHandler;
|
|
8
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
9
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
10
|
+
const event_hook_1 = require("../modules/event-hook");
|
|
11
|
+
const call_external_api_1 = __importDefault(require("../workflows/call-external-api"));
|
|
12
|
+
const order_fields_1 = require("./constants/order-fields");
|
|
13
|
+
// subscriber function
|
|
14
|
+
async function orderFulfillmentCreatedHandler({ event: { data }, container, }) {
|
|
15
|
+
const eventHookService = container.resolve(event_hook_1.EVENT_HOOK_MODULE);
|
|
16
|
+
const webHookOptions = await eventHookService.getWebHookOptions();
|
|
17
|
+
const webHookOption = webHookOptions.deliveryStartedHook;
|
|
18
|
+
if (!webHookOption?.url) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!webHookOption.authHeader?.headerAuthKey ||
|
|
22
|
+
!webHookOption.authHeader?.headerAuthValue) {
|
|
23
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Please provide auth header key and value");
|
|
24
|
+
}
|
|
25
|
+
const { result: order } = await core_flows_1.getOrderDetailWorkflow.run({
|
|
26
|
+
input: {
|
|
27
|
+
order_id: data.order_id,
|
|
28
|
+
fields: order_fields_1.orderFields,
|
|
29
|
+
},
|
|
30
|
+
container: container,
|
|
31
|
+
});
|
|
32
|
+
const payload = {
|
|
33
|
+
name: webHookOption.name,
|
|
34
|
+
payload: { order },
|
|
35
|
+
};
|
|
36
|
+
await call_external_api_1.default.run({
|
|
37
|
+
input: {
|
|
38
|
+
name: webHookOption.name ?? "order-fulfillment-created",
|
|
39
|
+
url: webHookOption.url,
|
|
40
|
+
authKey: webHookOption.authHeader.headerAuthKey,
|
|
41
|
+
authValue: webHookOption.authHeader.headerAuthValue,
|
|
42
|
+
type: "DELIVERY_STARTED",
|
|
43
|
+
payload,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
// subscriber config
|
|
48
|
+
exports.config = {
|
|
49
|
+
event: "order.fulfillment_created",
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItZnVsZmlsbG1lbnQtY3JlYXRlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdWJzY3JpYmVycy9vcmRlci1mdWxmaWxsbWVudC1jcmVhdGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQVNBLGlEQWtEQztBQTFERCxxREFBd0Q7QUFDeEQsNERBQXFFO0FBQ3JFLHNEQUEwRDtBQUUxRCx1RkFBcUU7QUFDckUsMkRBQXVEO0FBRXZELHNCQUFzQjtBQUNQLEtBQUssVUFBVSw4QkFBOEIsQ0FBQyxFQUMzRCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDZixTQUFTLEdBSVQ7SUFDQSxNQUFNLGdCQUFnQixHQUNwQixTQUFTLENBQUMsT0FBTyxDQUF5Qiw4QkFBaUIsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sY0FBYyxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUVsRSxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMsbUJBQW1CLENBQUM7SUFFekQsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUN4QixPQUFPO0lBQ1QsQ0FBQztJQUVELElBQ0UsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLGFBQWE7UUFDeEMsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLGVBQWUsRUFDMUMsQ0FBQztRQUNELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLDBDQUEwQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxtQ0FBc0IsQ0FBQyxHQUFHLENBQUM7UUFDekQsS0FBSyxFQUFFO1lBQ0wsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLE1BQU0sRUFBRSwwQkFBVztTQUNwQjtRQUNELFNBQVMsRUFBRSxTQUFTO0tBQ3JCLENBQUMsQ0FBQztJQUVILE1BQU0sT0FBTyxHQUFHO1FBQ2QsSUFBSSxFQUFFLGFBQWEsQ0FBQyxJQUFJO1FBQ3hCLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRTtLQUNuQixDQUFDO0lBRUYsTUFBTSwyQkFBdUIsQ0FBQyxHQUFHLENBQUM7UUFDaEMsS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLGFBQWEsQ0FBQyxJQUFJLElBQUksMkJBQTJCO1lBQ3ZELEdBQUcsRUFBRSxhQUFhLENBQUMsR0FBRztZQUN0QixPQUFPLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxhQUFhO1lBQy9DLFNBQVMsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLGVBQWU7WUFDbkQsSUFBSSxFQUFFLGtCQUFrQjtZQUN4QixPQUFPO1NBQ1I7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsb0JBQW9CO0FBQ1AsUUFBQSxNQUFNLEdBQXFCO0lBQ3RDLEtBQUssRUFBRSwyQkFBMkI7Q0FDbkMsQ0FBQyJ9
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.config = void 0;
|
|
7
|
+
exports.default = orderPickupCancelledHandler;
|
|
8
|
+
const framework_1 = require("@medusajs/framework");
|
|
9
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
10
|
+
const event_hook_1 = require("../modules/event-hook");
|
|
11
|
+
const call_external_api_1 = __importDefault(require("../workflows/call-external-api"));
|
|
12
|
+
const order_fields_1 = require("./constants/order-fields");
|
|
13
|
+
// subscriber function
|
|
14
|
+
async function orderPickupCancelledHandler({ event: { data }, }) {
|
|
15
|
+
const eventHookService = framework_1.container.resolve(event_hook_1.EVENT_HOOK_MODULE);
|
|
16
|
+
const webHookOptions = await eventHookService.getWebHookOptions();
|
|
17
|
+
const webHookOption = webHookOptions.pickupCancelledHook;
|
|
18
|
+
if (!webHookOption?.url) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!webHookOption.authHeader?.headerAuthKey ||
|
|
22
|
+
!webHookOption.authHeader?.headerAuthValue) {
|
|
23
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Please provide auth header key and value");
|
|
24
|
+
}
|
|
25
|
+
const query = framework_1.container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
26
|
+
const { data: [order], } = await query.graph({
|
|
27
|
+
entity: "order",
|
|
28
|
+
fields: ["pickup_date.*", ...order_fields_1.orderFields],
|
|
29
|
+
filters: { id: data.order_id },
|
|
30
|
+
}, { throwIfKeyNotFound: true });
|
|
31
|
+
const payload = {
|
|
32
|
+
name: webHookOption.name,
|
|
33
|
+
payload: { order },
|
|
34
|
+
};
|
|
35
|
+
await call_external_api_1.default.run({
|
|
36
|
+
input: {
|
|
37
|
+
name: webHookOption.name ?? "order-pickup-cancelled",
|
|
38
|
+
url: webHookOption.url,
|
|
39
|
+
authKey: webHookOption.authHeader.headerAuthKey,
|
|
40
|
+
authValue: webHookOption.authHeader.headerAuthValue,
|
|
41
|
+
payload,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
// subscriber config
|
|
46
|
+
exports.config = {
|
|
47
|
+
event: "order.pickup_date.cancelled",
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItcGlja3VwLWNhbmNlbGxlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdWJzY3JpYmVycy9vcmRlci1waWNrdXAtY2FuY2VsbGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQWVBLDhDQXFEQztBQXBFRCxtREFJNkI7QUFDN0IscURBR21DO0FBQ25DLHNEQUEwRDtBQUUxRCx1RkFBcUU7QUFDckUsMkRBQXVEO0FBRXZELHNCQUFzQjtBQUNQLEtBQUssVUFBVSwyQkFBMkIsQ0FBQyxFQUN4RCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FJZjtJQUNBLE1BQU0sZ0JBQWdCLEdBQ3BCLHFCQUFTLENBQUMsT0FBTyxDQUF5Qiw4QkFBaUIsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sY0FBYyxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUVsRSxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMsbUJBQW1CLENBQUM7SUFFekQsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUN4QixPQUFPO0lBQ1QsQ0FBQztJQUVELElBQ0UsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLGFBQWE7UUFDeEMsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLGVBQWUsRUFDMUMsQ0FBQztRQUNELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLDBDQUEwQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLHFCQUFTLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWpFLE1BQU0sRUFDSixJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FDZCxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FDbkI7UUFDRSxNQUFNLEVBQUUsT0FBTztRQUNmLE1BQU0sRUFBRSxDQUFDLGVBQWUsRUFBRSxHQUFHLDBCQUFXLENBQUM7UUFDekMsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7S0FDL0IsRUFDRCxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUM3QixDQUFDO0lBRUYsTUFBTSxPQUFPLEdBQUc7UUFDZCxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7UUFDeEIsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFO0tBQ25CLENBQUM7SUFFRixNQUFNLDJCQUF1QixDQUFDLEdBQUcsQ0FBQztRQUNoQyxLQUFLLEVBQUU7WUFDTCxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksSUFBSSx3QkFBd0I7WUFDcEQsR0FBRyxFQUFFLGFBQWEsQ0FBQyxHQUFHO1lBQ3RCLE9BQU8sRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLGFBQWE7WUFDL0MsU0FBUyxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsZUFBZTtZQUNuRCxPQUFPO1NBQ1I7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsb0JBQW9CO0FBQ1AsUUFBQSxNQUFNLEdBQXFCO0lBQ3RDLEtBQUssRUFBRSw2QkFBNkI7Q0FDckMsQ0FBQyJ9
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.config = void 0;
|
|
7
|
+
exports.default = orderPickupCreatedHandler;
|
|
8
|
+
const framework_1 = require("@medusajs/framework");
|
|
9
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
10
|
+
const event_hook_1 = require("../modules/event-hook");
|
|
11
|
+
const call_external_api_1 = __importDefault(require("../workflows/call-external-api"));
|
|
12
|
+
const order_fields_1 = require("./constants/order-fields");
|
|
13
|
+
// subscriber function
|
|
14
|
+
async function orderPickupCreatedHandler({ event: { data }, }) {
|
|
15
|
+
const eventHookService = framework_1.container.resolve(event_hook_1.EVENT_HOOK_MODULE);
|
|
16
|
+
const webHookOptions = await eventHookService.getWebHookOptions();
|
|
17
|
+
const webHookOption = webHookOptions.pickupCreatedHook;
|
|
18
|
+
if (!webHookOption?.url) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!webHookOption.authHeader?.headerAuthKey ||
|
|
22
|
+
!webHookOption.authHeader?.headerAuthValue) {
|
|
23
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Please provide auth header key and value");
|
|
24
|
+
}
|
|
25
|
+
const query = framework_1.container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
26
|
+
const { data: [order], } = await query.graph({
|
|
27
|
+
entity: "order",
|
|
28
|
+
fields: ["pickup_date.*", ...order_fields_1.orderFields],
|
|
29
|
+
filters: { id: data.order_id },
|
|
30
|
+
}, { throwIfKeyNotFound: true });
|
|
31
|
+
const payload = {
|
|
32
|
+
name: webHookOption.name,
|
|
33
|
+
payload: { order },
|
|
34
|
+
};
|
|
35
|
+
await call_external_api_1.default.run({
|
|
36
|
+
input: {
|
|
37
|
+
name: webHookOption.name ?? "order-pickup-created",
|
|
38
|
+
url: webHookOption.url,
|
|
39
|
+
authKey: webHookOption.authHeader.headerAuthKey,
|
|
40
|
+
authValue: webHookOption.authHeader.headerAuthValue,
|
|
41
|
+
payload,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
// subscriber config
|
|
46
|
+
exports.config = {
|
|
47
|
+
event: "order.pickup_date.created",
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItcGlja3VwLWNyZWF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc3Vic2NyaWJlcnMvb3JkZXItcGlja3VwLWNyZWF0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBZUEsNENBcURDO0FBcEVELG1EQUk2QjtBQUM3QixxREFHbUM7QUFDbkMsc0RBQTBEO0FBRTFELHVGQUFxRTtBQUNyRSwyREFBdUQ7QUFFdkQsc0JBQXNCO0FBQ1AsS0FBSyxVQUFVLHlCQUF5QixDQUFDLEVBQ3RELEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxHQUlmO0lBQ0EsTUFBTSxnQkFBZ0IsR0FDcEIscUJBQVMsQ0FBQyxPQUFPLENBQXlCLDhCQUFpQixDQUFDLENBQUM7SUFDL0QsTUFBTSxjQUFjLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBRWxFLE1BQU0sYUFBYSxHQUFHLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQztJQUV2RCxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLE9BQU87SUFDVCxDQUFDO0lBRUQsSUFDRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsYUFBYTtRQUN4QyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUMxQyxDQUFDO1FBQ0QsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsMENBQTBDLENBQzNDLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcscUJBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFakUsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUNkLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUNuQjtRQUNFLE1BQU0sRUFBRSxPQUFPO1FBQ2YsTUFBTSxFQUFFLENBQUMsZUFBZSxFQUFFLEdBQUcsMEJBQVcsQ0FBQztRQUN6QyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtLQUMvQixFQUNELEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLENBQzdCLENBQUM7SUFFRixNQUFNLE9BQU8sR0FBRztRQUNkLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSTtRQUN4QixPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUU7S0FDbkIsQ0FBQztJQUVGLE1BQU0sMkJBQXVCLENBQUMsR0FBRyxDQUFDO1FBQ2hDLEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSSxJQUFJLHNCQUFzQjtZQUNsRCxHQUFHLEVBQUUsYUFBYSxDQUFDLEdBQUc7WUFDdEIsT0FBTyxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsYUFBYTtZQUMvQyxTQUFTLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxlQUFlO1lBQ25ELE9BQU87U0FDUjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxvQkFBb0I7QUFDUCxRQUFBLE1BQU0sR0FBcUI7SUFDdEMsS0FBSyxFQUFFLDJCQUEyQjtDQUNuQyxDQUFDIn0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.config = void 0;
|
|
7
|
+
exports.default = orderPickupUpdatedHandler;
|
|
8
|
+
const framework_1 = require("@medusajs/framework");
|
|
9
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
10
|
+
const event_hook_1 = require("../modules/event-hook");
|
|
11
|
+
const call_external_api_1 = __importDefault(require("../workflows/call-external-api"));
|
|
12
|
+
const order_fields_1 = require("./constants/order-fields");
|
|
13
|
+
// subscriber function
|
|
14
|
+
async function orderPickupUpdatedHandler({ event: { data }, }) {
|
|
15
|
+
const eventHookService = framework_1.container.resolve(event_hook_1.EVENT_HOOK_MODULE);
|
|
16
|
+
const webHookOptions = await eventHookService.getWebHookOptions();
|
|
17
|
+
const webHookOption = webHookOptions.pickupUpdatedHook;
|
|
18
|
+
if (!webHookOption?.url) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!webHookOption.authHeader?.headerAuthKey ||
|
|
22
|
+
!webHookOption.authHeader?.headerAuthValue) {
|
|
23
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Please provide auth header key and value");
|
|
24
|
+
}
|
|
25
|
+
const query = framework_1.container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
26
|
+
const { data: [order], } = await query.graph({
|
|
27
|
+
entity: "order",
|
|
28
|
+
fields: ["pickup_date.*", ...order_fields_1.orderFields],
|
|
29
|
+
filters: { id: data.order_id },
|
|
30
|
+
}, { throwIfKeyNotFound: true });
|
|
31
|
+
const payload = {
|
|
32
|
+
name: webHookOption.name,
|
|
33
|
+
payload: { order },
|
|
34
|
+
};
|
|
35
|
+
await call_external_api_1.default.run({
|
|
36
|
+
input: {
|
|
37
|
+
name: webHookOption.name ?? "order-pickup-updated",
|
|
38
|
+
url: webHookOption.url,
|
|
39
|
+
authKey: webHookOption.authHeader.headerAuthKey,
|
|
40
|
+
authValue: webHookOption.authHeader.headerAuthValue,
|
|
41
|
+
payload,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
// subscriber config
|
|
46
|
+
exports.config = {
|
|
47
|
+
event: "order.pickup_date.updated",
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItcGlja3VwLXVwZGF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc3Vic2NyaWJlcnMvb3JkZXItcGlja3VwLXVwZGF0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBZUEsNENBcURDO0FBcEVELG1EQUk2QjtBQUM3QixxREFHbUM7QUFDbkMsc0RBQTBEO0FBRTFELHVGQUFxRTtBQUNyRSwyREFBdUQ7QUFFdkQsc0JBQXNCO0FBQ1AsS0FBSyxVQUFVLHlCQUF5QixDQUFDLEVBQ3RELEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxHQUlmO0lBQ0EsTUFBTSxnQkFBZ0IsR0FDcEIscUJBQVMsQ0FBQyxPQUFPLENBQXlCLDhCQUFpQixDQUFDLENBQUM7SUFDL0QsTUFBTSxjQUFjLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBRWxFLE1BQU0sYUFBYSxHQUFHLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQztJQUV2RCxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLE9BQU87SUFDVCxDQUFDO0lBRUQsSUFDRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsYUFBYTtRQUN4QyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUMxQyxDQUFDO1FBQ0QsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsMENBQTBDLENBQzNDLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcscUJBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFakUsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUNkLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUNuQjtRQUNFLE1BQU0sRUFBRSxPQUFPO1FBQ2YsTUFBTSxFQUFFLENBQUMsZUFBZSxFQUFFLEdBQUcsMEJBQVcsQ0FBQztRQUN6QyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtLQUMvQixFQUNELEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLENBQzdCLENBQUM7SUFFRixNQUFNLE9BQU8sR0FBRztRQUNkLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSTtRQUN4QixPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUU7S0FDbkIsQ0FBQztJQUVGLE1BQU0sMkJBQXVCLENBQUMsR0FBRyxDQUFDO1FBQ2hDLEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSSxJQUFJLHNCQUFzQjtZQUNsRCxHQUFHLEVBQUUsYUFBYSxDQUFDLEdBQUc7WUFDdEIsT0FBTyxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsYUFBYTtZQUMvQyxTQUFTLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxlQUFlO1lBQ25ELE9BQU87U0FDUjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxvQkFBb0I7QUFDUCxRQUFBLE1BQU0sR0FBcUI7SUFDdEMsS0FBSyxFQUFFLDJCQUEyQjtDQUNuQyxDQUFDIn0=
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.config = void 0;
|
|
7
|
+
exports.default = orderPlacedHandler;
|
|
8
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
9
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
10
|
+
const event_hook_1 = require("../modules/event-hook");
|
|
11
|
+
const call_external_api_1 = __importDefault(require("../workflows/call-external-api"));
|
|
12
|
+
const order_fields_1 = require("./constants/order-fields");
|
|
13
|
+
// subscriber function
|
|
14
|
+
async function orderPlacedHandler({ event: { data }, container, }) {
|
|
15
|
+
const eventHookService = container.resolve(event_hook_1.EVENT_HOOK_MODULE);
|
|
16
|
+
const webHookOptions = await eventHookService.getWebHookOptions();
|
|
17
|
+
const webHookOption = webHookOptions.placedOrderHook;
|
|
18
|
+
if (!webHookOption?.url) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!webHookOption.authHeader?.headerAuthKey ||
|
|
22
|
+
!webHookOption.authHeader?.headerAuthValue) {
|
|
23
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Please provide auth header key and value");
|
|
24
|
+
}
|
|
25
|
+
const { result: order } = await core_flows_1.getOrderDetailWorkflow.run({
|
|
26
|
+
input: {
|
|
27
|
+
order_id: data.id,
|
|
28
|
+
fields: order_fields_1.orderFields,
|
|
29
|
+
},
|
|
30
|
+
container: container,
|
|
31
|
+
});
|
|
32
|
+
const payload = {
|
|
33
|
+
name: webHookOption.name,
|
|
34
|
+
payload: { order },
|
|
35
|
+
};
|
|
36
|
+
await call_external_api_1.default.run({
|
|
37
|
+
input: {
|
|
38
|
+
name: webHookOption.name ?? "order-placed",
|
|
39
|
+
url: webHookOption.url,
|
|
40
|
+
authKey: webHookOption.authHeader.headerAuthKey,
|
|
41
|
+
authValue: webHookOption.authHeader.headerAuthValue,
|
|
42
|
+
type: "ORDER_PLACED",
|
|
43
|
+
payload,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
// subscriber config
|
|
48
|
+
exports.config = {
|
|
49
|
+
event: "order.placed",
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItcGxhY2VkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL29yZGVyLXBsYWNlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFTQSxxQ0ErQ0M7QUF2REQscURBQXdEO0FBQ3hELDREQUFxRTtBQUNyRSxzREFBMEQ7QUFFMUQsdUZBQXFFO0FBQ3JFLDJEQUF1RDtBQUV2RCxzQkFBc0I7QUFDUCxLQUFLLFVBQVUsa0JBQWtCLENBQUMsRUFDL0MsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQ2YsU0FBUyxHQUNzQjtJQUMvQixNQUFNLGdCQUFnQixHQUNwQixTQUFTLENBQUMsT0FBTyxDQUF5Qiw4QkFBaUIsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sY0FBYyxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUVsRSxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMsZUFBZSxDQUFDO0lBRXJELElBQUksQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDeEIsT0FBTztJQUNULENBQUM7SUFFRCxJQUNFLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxhQUFhO1FBQ3hDLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxlQUFlLEVBQzFDLENBQUM7UUFDRCxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QiwwQ0FBMEMsQ0FDM0MsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sbUNBQXNCLENBQUMsR0FBRyxDQUFDO1FBQ3pELEtBQUssRUFBRTtZQUNMLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNqQixNQUFNLEVBQUUsMEJBQVc7U0FDcEI7UUFDRCxTQUFTLEVBQUUsU0FBUztLQUNyQixDQUFDLENBQUM7SUFFSCxNQUFNLE9BQU8sR0FBRztRQUNkLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSTtRQUN4QixPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUU7S0FDbkIsQ0FBQztJQUVGLE1BQU0sMkJBQXVCLENBQUMsR0FBRyxDQUFDO1FBQ2hDLEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSSxJQUFJLGNBQWM7WUFDMUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxHQUFHO1lBQ3RCLE9BQU8sRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLGFBQWE7WUFDL0MsU0FBUyxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsZUFBZTtZQUNuRCxJQUFJLEVBQUUsY0FBYztZQUNwQixPQUFPO1NBQ1I7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsb0JBQW9CO0FBQ1AsUUFBQSxNQUFNLEdBQXFCO0lBQ3RDLEtBQUssRUFBRSxjQUFjO0NBQ3RCLENBQUMifQ==
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.config = void 0;
|
|
7
|
+
exports.default = orderPlacedHandler;
|
|
8
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
9
|
+
const event_hook_1 = require("../modules/event-hook");
|
|
10
|
+
const call_external_api_1 = __importDefault(require("../workflows/call-external-api"));
|
|
11
|
+
const customer_fields_1 = require("./constants/customer-fields");
|
|
12
|
+
const quote_fields_1 = require("./constants/quote-fields");
|
|
13
|
+
// subscriber function
|
|
14
|
+
async function orderPlacedHandler({ event: { data }, container, }) {
|
|
15
|
+
const logger = container.resolve("logger");
|
|
16
|
+
const eventHookService = container.resolve(event_hook_1.EVENT_HOOK_MODULE);
|
|
17
|
+
const webHookOptions = await eventHookService.getWebHookOptions();
|
|
18
|
+
const webHookOption = webHookOptions.requestQuotationHook;
|
|
19
|
+
if (!webHookOption?.url) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (!webHookOption.authHeader?.headerAuthKey ||
|
|
23
|
+
!webHookOption.authHeader?.headerAuthValue) {
|
|
24
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Please provide auth header key and value");
|
|
25
|
+
}
|
|
26
|
+
const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
27
|
+
const { data: [quote], } = await query.graph({
|
|
28
|
+
entity: "quote",
|
|
29
|
+
fields: [...quote_fields_1.quoteFields, ...customer_fields_1.customerFields],
|
|
30
|
+
filters: { id: data.id },
|
|
31
|
+
}, { throwIfKeyNotFound: true });
|
|
32
|
+
const payload = {
|
|
33
|
+
name: webHookOption.name,
|
|
34
|
+
payload: { quote },
|
|
35
|
+
};
|
|
36
|
+
await call_external_api_1.default.run({
|
|
37
|
+
input: {
|
|
38
|
+
name: webHookOption.name ?? "quote-requested",
|
|
39
|
+
url: webHookOption.url,
|
|
40
|
+
authKey: webHookOption.authHeader.headerAuthKey,
|
|
41
|
+
authValue: webHookOption.authHeader.headerAuthValue,
|
|
42
|
+
type: "REQUEST_QUOTATION",
|
|
43
|
+
payload,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
// subscriber config
|
|
48
|
+
exports.config = {
|
|
49
|
+
event: "quote.requested",
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVvdGUtcmVxdWVzdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL3F1b3RlLXJlcXVlc3RlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFhQSxxQ0FxREM7QUFqRUQscURBR21DO0FBRW5DLHNEQUEwRDtBQUUxRCx1RkFBcUU7QUFDckUsaUVBQTZEO0FBQzdELDJEQUF1RDtBQUV2RCxzQkFBc0I7QUFDUCxLQUFLLFVBQVUsa0JBQWtCLENBQUMsRUFDL0MsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQ2YsU0FBUyxHQUNzQjtJQUMvQixNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFTLFFBQVEsQ0FBQyxDQUFDO0lBQ25ELE1BQU0sZ0JBQWdCLEdBQ3BCLFNBQVMsQ0FBQyxPQUFPLENBQXlCLDhCQUFpQixDQUFDLENBQUM7SUFDL0QsTUFBTSxjQUFjLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBRWxFLE1BQU0sYUFBYSxHQUFHLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQztJQUUxRCxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLE9BQU87SUFDVCxDQUFDO0lBRUQsSUFDRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsYUFBYTtRQUN4QyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUMxQyxDQUFDO1FBQ0QsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsMENBQTBDLENBQzNDLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVqRSxNQUFNLEVBQ0osSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQ2QsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQ25CO1FBQ0UsTUFBTSxFQUFFLE9BQU87UUFDZixNQUFNLEVBQUUsQ0FBQyxHQUFHLDBCQUFXLEVBQUUsR0FBRyxnQ0FBYyxDQUFDO1FBQzNDLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFO0tBQ3pCLEVBQ0QsRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsQ0FDN0IsQ0FBQztJQUVGLE1BQU0sT0FBTyxHQUFHO1FBQ2QsSUFBSSxFQUFFLGFBQWEsQ0FBQyxJQUFJO1FBQ3hCLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRTtLQUNuQixDQUFDO0lBRUYsTUFBTSwyQkFBdUIsQ0FBQyxHQUFHLENBQUM7UUFDaEMsS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLGFBQWEsQ0FBQyxJQUFJLElBQUksaUJBQWlCO1lBQzdDLEdBQUcsRUFBRSxhQUFhLENBQUMsR0FBRztZQUN0QixPQUFPLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxhQUFhO1lBQy9DLFNBQVMsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLGVBQWU7WUFDbkQsSUFBSSxFQUFFLG1CQUFtQjtZQUN6QixPQUFPO1NBQ1I7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsb0JBQW9CO0FBQ1AsUUFBQSxNQUFNLEdBQXFCO0lBQ3RDLEtBQUssRUFBRSxpQkFBaUI7Q0FDekIsQ0FBQyJ9
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
4
|
+
const callExternalApiStep = (0, workflows_sdk_1.createStep)("call-external-api", async ({ name, url, authKey, authValue, type, payload }) => {
|
|
5
|
+
console.log(url, authKey, url, type, payload);
|
|
6
|
+
await fetch(url, {
|
|
7
|
+
method: "POST",
|
|
8
|
+
headers: {
|
|
9
|
+
"Content-Type": "application/json",
|
|
10
|
+
[authKey]: authValue,
|
|
11
|
+
},
|
|
12
|
+
body: JSON.stringify(payload),
|
|
13
|
+
});
|
|
14
|
+
return new workflows_sdk_1.StepResponse({
|
|
15
|
+
message: `trigger ${type} ${name} event to ${url} successfully`,
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
const callExternalApiWorkflow = (0, workflows_sdk_1.createWorkflow)("call-external-api", (input) => {
|
|
19
|
+
callExternalApiStep(input);
|
|
20
|
+
return new workflows_sdk_1.WorkflowResponse(input);
|
|
21
|
+
});
|
|
22
|
+
exports.default = callExternalApiWorkflow;
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbC1leHRlcm5hbC1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2NhbGwtZXh0ZXJuYWwtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEscUVBSzJDO0FBYTNDLE1BQU0sbUJBQW1CLEdBQUcsSUFBQSwwQkFBVSxFQUNwQyxtQkFBbUIsRUFDbkIsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQWlCLEVBQUUsRUFBRTtJQUN4RSxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUU5QyxNQUFNLEtBQUssQ0FBQyxHQUFHLEVBQUU7UUFDZixNQUFNLEVBQUUsTUFBTTtRQUNkLE9BQU8sRUFBRTtZQUNQLGNBQWMsRUFBRSxrQkFBa0I7WUFDbEMsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO0tBQzlCLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSw0QkFBWSxDQUFDO1FBQ3RCLE9BQU8sRUFBRSxXQUFXLElBQUksSUFBSSxJQUFJLGFBQWEsR0FBRyxlQUFlO0tBQ2hFLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FDRixDQUFDO0FBRUYsTUFBTSx1QkFBdUIsR0FBRyxJQUFBLDhCQUFjLEVBQzVDLG1CQUFtQixFQUNuQixDQUFDLEtBQW9CLEVBQUUsRUFBRTtJQUN2QixtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUUzQixPQUFPLElBQUksZ0NBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDckMsQ0FBQyxDQUNGLENBQUM7QUFFRixrQkFBZSx1QkFBdUIsQ0FBQyJ9
|
package/README.md
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Medusa Plugin Webhook Notification
|
|
2
|
+
|
|
3
|
+
## How to install
|
|
4
|
+
1. yarn add medusa-notification-webhook
|
|
5
|
+
|
|
6
|
+
2. configure your medusa backend `medusa-config.ts`
|
|
7
|
+
```ts
|
|
8
|
+
module.exports = defineConfig({
|
|
9
|
+
// ... rest of the config
|
|
10
|
+
plugins: [
|
|
11
|
+
{
|
|
12
|
+
resolve: "medusa-notification-webhook",
|
|
13
|
+
options: {
|
|
14
|
+
webHookConfig: {
|
|
15
|
+
requestQuotationHookUrl: {
|
|
16
|
+
name: "request-quotation", // for novu workflow name
|
|
17
|
+
url: process.env.NOTI_WEBHOOK_URL_REQUEST_QUOTATION,
|
|
18
|
+
authHeader: {
|
|
19
|
+
headerAuthKey: "Authorization",
|
|
20
|
+
headerAuthValue: `ApiKey ${process.env.NOTI_WEBHOOK_API_KEY_NOVU}`,
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
placedOrderHook: {
|
|
24
|
+
name: "placed-order", // for novu workflow name
|
|
25
|
+
url: process.env.NOTI_WEBHOOK_URL_PLACED_ORDER,
|
|
26
|
+
authHeader: {
|
|
27
|
+
headerAuthKey: "Authorization",
|
|
28
|
+
headerAuthValue: `ApiKey ${process.env.NOTI_WEBHOOK_API_KEY_NOVU}`,
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
deliveryStartedHookUrl: {
|
|
32
|
+
name: "delivery-started", // for novu workflow name
|
|
33
|
+
url: process.env.NOTI_WEBHOOK_URL_DELIVERY_STARTED,
|
|
34
|
+
authHeader: {
|
|
35
|
+
headerAuthKey: "Authorization",
|
|
36
|
+
headerAuthValue: `ApiKey ${process.env.NOTI_WEBHOOK_API_KEY_NOVU}`,
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
pickupCreatedHook: {
|
|
40
|
+
name: "pickup-created", // for novu workflow name
|
|
41
|
+
url: process.env.NOTI_WEBHOOK_URL_PICKUP_CREATED,
|
|
42
|
+
authHeader: {
|
|
43
|
+
headerAuthKey: "Authorization",
|
|
44
|
+
headerAuthValue: `ApiKey ${process.env.NOTI_WEBHOOK_API_KEY_NOVU}`,
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
pickupUpdatedHook: {
|
|
48
|
+
name: "pickup-updated", // for novu workflow name
|
|
49
|
+
url: process.env.NOTI_WEBHOOK_URL_PICKUP_UPDATED,
|
|
50
|
+
authHeader: {
|
|
51
|
+
headerAuthKey: "Authorization",
|
|
52
|
+
headerAuthValue: `ApiKey ${process.env.NOTI_WEBHOOK_API_KEY_NOVU}`,
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
pickupCancelledHook: {
|
|
56
|
+
name: "pickup-cancelled", // for novu workflow name
|
|
57
|
+
url: process.env.NOTI_WEBHOOK_URL_PICKUP_CANCELLED,
|
|
58
|
+
authHeader: {
|
|
59
|
+
headerAuthKey: "Authorization",
|
|
60
|
+
headerAuthValue: `ApiKey ${process.env.NOTI_WEBHOOK_API_KEY_NOVU}`,
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
});
|
|
68
|
+
```
|
|
69
|
+
3. add variables to .env
|
|
70
|
+
```
|
|
71
|
+
NOTI_WEBHOOK_API_KEY_NOVU=<api-key>
|
|
72
|
+
NOTI_WEBHOOK_URL_PLACED_ORDER=<endpoint ex: "https://api.novu.co/v1/events/trigger">
|
|
73
|
+
NOTI_WEBHOOK_URL_REQUEST_QUOTATION=<endpoint ex: "https://api.novu.co/v1/events/trigger">
|
|
74
|
+
NOTI_WEBHOOK_URL_DELIVERY_STARTED=<endpoint ex: "https://api.novu.co/v1/events/trigger">
|
|
75
|
+
NOTI_WEBHOOK_URL_PICKUP_CREATED=<endpoint ex: "https://api.novu.co/v1/events/trigger">
|
|
76
|
+
NOTI_WEBHOOK_URL_PICKUP_UPDATED=<endpoint ex: "https://api.novu.co/v1/events/trigger">
|
|
77
|
+
NOTI_WEBHOOK_URL_PICKUP_CANCELLED=<endpoint ex: "https://api.novu.co/v1/events/trigger">
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
4. all done now just start your medusa backend
|
|
81
|
+
`yarn dev` `yarn start` or whatever you use to start your backend
|
package/package.json
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lodashventure/medusa-notification-webhook",
|
|
3
|
+
"version": "0.0.6",
|
|
4
|
+
"description": "A starter for Medusa plugins.",
|
|
5
|
+
"author": "Medusa (https://medusajs.com)",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"files": [
|
|
8
|
+
".medusa/server"
|
|
9
|
+
],
|
|
10
|
+
"exports": {
|
|
11
|
+
"./package.json": "./package.json",
|
|
12
|
+
"./workflows": "./.medusa/server/src/workflows/index.js",
|
|
13
|
+
"./.medusa/server/src/modules/*": "./.medusa/server/src/modules/*/index.js",
|
|
14
|
+
"./modules/*": "./.medusa/server/src/modules/*/index.js",
|
|
15
|
+
"./providers/*": "./.medusa/server/src/providers/*/index.js",
|
|
16
|
+
"./*": "./.medusa/server/src/*.js"
|
|
17
|
+
},
|
|
18
|
+
"keywords": [
|
|
19
|
+
"medusa",
|
|
20
|
+
"plugin",
|
|
21
|
+
"medusa-plugin-other",
|
|
22
|
+
"medusa-plugin",
|
|
23
|
+
"medusa-v2"
|
|
24
|
+
],
|
|
25
|
+
"scripts": {
|
|
26
|
+
"build": "medusa plugin:build",
|
|
27
|
+
"dev": "medusa plugin:develop",
|
|
28
|
+
"prepublishOnly": "medusa plugin:build"
|
|
29
|
+
},
|
|
30
|
+
"devDependencies": {
|
|
31
|
+
"@medusajs/admin-sdk": "2.4.0",
|
|
32
|
+
"@medusajs/cli": "2.4.0",
|
|
33
|
+
"@medusajs/framework": "2.4.0",
|
|
34
|
+
"@medusajs/icons": "2.4.0",
|
|
35
|
+
"@medusajs/medusa": "2.4.0",
|
|
36
|
+
"@medusajs/test-utils": "2.4.0",
|
|
37
|
+
"@medusajs/ui": "4.0.4",
|
|
38
|
+
"@mikro-orm/cli": "6.4.3",
|
|
39
|
+
"@mikro-orm/core": "6.4.3",
|
|
40
|
+
"@mikro-orm/knex": "6.4.3",
|
|
41
|
+
"@mikro-orm/migrations": "6.4.3",
|
|
42
|
+
"@mikro-orm/postgresql": "6.4.3",
|
|
43
|
+
"@swc/core": "1.5.7",
|
|
44
|
+
"@types/node": "^20.0.0",
|
|
45
|
+
"@types/react": "^18.3.2",
|
|
46
|
+
"@types/react-dom": "^18.2.25",
|
|
47
|
+
"awilix": "^8.0.1",
|
|
48
|
+
"pg": "^8.13.0",
|
|
49
|
+
"prop-types": "^15.8.1",
|
|
50
|
+
"react": "^18.2.0",
|
|
51
|
+
"react-dom": "^18.2.0",
|
|
52
|
+
"ts-node": "^10.9.2",
|
|
53
|
+
"typescript": "^5.6.2",
|
|
54
|
+
"vite": "^5.2.11",
|
|
55
|
+
"yalc": "^1.0.0-pre.53"
|
|
56
|
+
},
|
|
57
|
+
"peerDependencies": {
|
|
58
|
+
"@medusajs/admin-sdk": "2.4.0",
|
|
59
|
+
"@medusajs/cli": "2.4.0",
|
|
60
|
+
"@medusajs/framework": "2.4.0",
|
|
61
|
+
"@medusajs/icons": "2.4.0",
|
|
62
|
+
"@medusajs/medusa": "2.4.0",
|
|
63
|
+
"@medusajs/test-utils": "2.4.0",
|
|
64
|
+
"@medusajs/ui": "4.0.3",
|
|
65
|
+
"@mikro-orm/cli": "6.4.3",
|
|
66
|
+
"@mikro-orm/core": "6.4.3",
|
|
67
|
+
"@mikro-orm/knex": "6.4.3",
|
|
68
|
+
"@mikro-orm/migrations": "6.4.3",
|
|
69
|
+
"@mikro-orm/postgresql": "6.4.3",
|
|
70
|
+
"awilix": "^8.0.1",
|
|
71
|
+
"pg": "^8.13.0"
|
|
72
|
+
},
|
|
73
|
+
"engines": {
|
|
74
|
+
"node": ">=20"
|
|
75
|
+
}
|
|
76
|
+
}
|