@devx-commerce/plugin-gati 0.0.2-beta.37 → 0.0.2-beta.39
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/api/admin/erp-event/middlewares.js +17 -0
- package/.medusa/server/src/api/admin/erp-event/query-config.js +23 -0
- package/.medusa/server/src/api/admin/erp-event/route.js +22 -0
- package/.medusa/server/src/api/admin/erp-event/utils.js +20 -0
- package/.medusa/server/src/api/admin/erp-event/validators.js +9 -0
- package/.medusa/server/src/api/admin/middlewares.js +11 -0
- package/.medusa/server/src/api/erp/webhook/config.js +88 -0
- package/.medusa/server/src/api/erp/webhook/route.js +32 -126
- package/.medusa/server/src/api/erp/webhook/utils.js +61 -0
- package/.medusa/server/src/api/middlewares.js +12 -0
- package/.medusa/server/src/lib/api-response.js +103 -0
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250620030100.js +36 -0
- package/.medusa/server/src/modules/extended-product/models/extended-product.js +4 -3
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030335.js +32 -0
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030522.js +20 -0
- package/.medusa/server/src/modules/extended-variant/models/extended-variant.js +6 -5
- package/.medusa/server/src/subscribers/party-master-location.js +1 -2
- package/.medusa/server/src/workflows/create-extended-product-from-product/index.js +13 -3
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-extended-product.js +1 -1
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-exploration-lines.js +1 -2
- package/.medusa/server/src/workflows/create-extended-variant-from-variant/index.js +13 -3
- package/.medusa/server/src/workflows/party-master/index.js +22 -4
- package/.medusa/server/src/workflows/party-style-master/index.js +19 -0
- package/.medusa/server/src/workflows/party-style-master/steps/delete-party-style-master.js +40 -0
- package/.medusa/server/src/workflows/party-style-master/steps/fetch-party-styles.js +70 -0
- package/.medusa/server/src/workflows/party-style-master/steps/index.js +19 -0
- package/.medusa/server/src/workflows/{create-or-update-party-style-master/index.js → party-style-master/workflows/create-or-update-party-style-master.js} +6 -6
- package/.medusa/server/src/workflows/party-style-master/workflows/delete-party-style-master.js +13 -0
- package/.medusa/server/src/workflows/party-style-master/workflows/index.js +19 -0
- package/.medusa/server/src/workflows/raw-master/steps/create-raw.js +1 -2
- package/.medusa/server/src/workflows/style-master/index.js +19 -0
- package/.medusa/server/src/workflows/style-master/steps/delete-style-master.js +38 -0
- package/.medusa/server/src/workflows/style-master/steps/fetch-styles.js +70 -0
- package/.medusa/server/src/workflows/style-master/steps/index.js +19 -0
- package/.medusa/server/src/workflows/style-master/workflows/create-or-update-style-master.js +326 -0
- package/.medusa/server/src/workflows/style-master/workflows/delete-style-master.js +24 -0
- package/.medusa/server/src/workflows/style-master/workflows/index.js +19 -0
- package/.medusa/server/src/workflows/types/index.js +1 -1
- package/package.json +1 -1
- package/.medusa/server/src/api/admin/plugin/route.js +0 -7
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250519043358.js +0 -27
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250601030519.js +0 -23
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250613064237.js +0 -14
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250507055941.js +0 -27
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250508025507.js +0 -14
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250601045242.js +0 -18
- package/.medusa/server/src/workflows/create-or-update-party-style-master/steps/fetch-party-styles.js +0 -70
- package/.medusa/server/src/workflows/create-or-update-style-master/index.js +0 -326
- package/.medusa/server/src/workflows/create-or-update-style-master/steps/fetch-styles.js +0 -70
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const framework_1 = require("@medusajs/framework");
|
|
4
|
+
const query_config_1 = require("./query-config");
|
|
5
|
+
const validators_1 = require("./validators");
|
|
6
|
+
exports.default = (0, framework_1.defineMiddlewares)({
|
|
7
|
+
routes: [
|
|
8
|
+
{
|
|
9
|
+
method: ["GET"],
|
|
10
|
+
matcher: "/admin/erp-event",
|
|
11
|
+
middlewares: [
|
|
12
|
+
(0, framework_1.validateAndTransformQuery)(validators_1.AdminGetErpEventParams, query_config_1.adminErpEventQueryConfig.list),
|
|
13
|
+
],
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL2VycC1ldmVudC9taWRkbGV3YXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG1EQUc2QjtBQUU3QixpREFBMEQ7QUFDMUQsNkNBQXNEO0FBRXRELGtCQUFlLElBQUEsNkJBQWlCLEVBQUM7SUFDL0IsTUFBTSxFQUFFO1FBQ047WUFDRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDZixPQUFPLEVBQUUsa0JBQWtCO1lBQzNCLFdBQVcsRUFBRTtnQkFDWCxJQUFBLHFDQUF5QixFQUN2QixtQ0FBc0IsRUFDdEIsdUNBQXdCLENBQUMsSUFBSSxDQUM5QjthQUNGO1NBQ0Y7S0FDRjtDQUNGLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.adminErpEventQueryConfig = exports.adminErpEventFields = void 0;
|
|
4
|
+
exports.adminErpEventFields = [
|
|
5
|
+
"id",
|
|
6
|
+
"datafor",
|
|
7
|
+
"operation",
|
|
8
|
+
"data",
|
|
9
|
+
"created_at",
|
|
10
|
+
"updated_at",
|
|
11
|
+
"deleted_at",
|
|
12
|
+
];
|
|
13
|
+
exports.adminErpEventQueryConfig = {
|
|
14
|
+
list: {
|
|
15
|
+
defaults: exports.adminErpEventFields,
|
|
16
|
+
isList: true,
|
|
17
|
+
},
|
|
18
|
+
retrieve: {
|
|
19
|
+
defaults: exports.adminErpEventFields,
|
|
20
|
+
isList: false,
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwaS9hZG1pbi9lcnAtZXZlbnQvcXVlcnktY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFhLFFBQUEsbUJBQW1CLEdBQUc7SUFDakMsSUFBSTtJQUNKLFNBQVM7SUFDVCxXQUFXO0lBQ1gsTUFBTTtJQUNOLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtDQUNiLENBQUM7QUFFVyxRQUFBLHdCQUF3QixHQUFHO0lBQ3RDLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSwyQkFBbUI7UUFDN0IsTUFBTSxFQUFFLElBQUk7S0FDYjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSwyQkFBbUI7UUFDN0IsTUFBTSxFQUFFLEtBQUs7S0FDZDtDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GET = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const api_response_1 = require("../../../lib/api-response");
|
|
6
|
+
const GET = async (req, res) => {
|
|
7
|
+
const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
8
|
+
const { data: erp_events, metadata } = await query.graph({
|
|
9
|
+
entity: "erp_event",
|
|
10
|
+
fields: req.queryConfig.fields,
|
|
11
|
+
filters: req.filterableFields,
|
|
12
|
+
pagination: req.queryConfig.pagination,
|
|
13
|
+
});
|
|
14
|
+
return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({
|
|
15
|
+
erp_events,
|
|
16
|
+
count: metadata.count,
|
|
17
|
+
offset: metadata.skip,
|
|
18
|
+
limit: metadata.take,
|
|
19
|
+
}, "Fetched ERP Events"));
|
|
20
|
+
};
|
|
21
|
+
exports.GET = GET;
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL2VycC1ldmVudC9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxxREFBc0U7QUFFdEUsNERBR21DO0FBRTVCLE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWpFLE1BQU0sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN2RCxNQUFNLEVBQUUsV0FBVztRQUNuQixNQUFNLEVBQUUsR0FBRyxDQUFDLFdBQVcsQ0FBQyxNQUFNO1FBQzlCLE9BQU8sRUFBRSxHQUFHLENBQUMsZ0JBQWdCO1FBQzdCLFVBQVUsRUFBRSxHQUFHLENBQUMsV0FBVyxDQUFDLFVBQVU7S0FDdkMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLG9DQUFxQixFQUNuQjtRQUNFLFVBQVU7UUFDVixLQUFLLEVBQUUsUUFBUyxDQUFDLEtBQUs7UUFDdEIsTUFBTSxFQUFFLFFBQVMsQ0FBQyxJQUFJO1FBQ3RCLEtBQUssRUFBRSxRQUFTLENBQUMsSUFBSTtLQUN0QixFQUNELG9CQUFvQixDQUNyQixDQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUF6QlcsUUFBQSxHQUFHLE9BeUJkIn0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleSearchMiddleware = void 0;
|
|
4
|
+
const handleSearchMiddleware = (req, _res, next) => {
|
|
5
|
+
const { q } = req.validatedQuery || {};
|
|
6
|
+
if (q && typeof q === "string") {
|
|
7
|
+
req.filterableFields = req.filterableFields || {};
|
|
8
|
+
req.filterableFields.$or = [
|
|
9
|
+
{ handle: { $ilike: `%${q}%` } },
|
|
10
|
+
{ award_name: { $ilike: `%${q}%` } },
|
|
11
|
+
{ awarded_by_name: { $ilike: `%${q}%` } },
|
|
12
|
+
{ description: { $ilike: `%${q}%` } },
|
|
13
|
+
{ status: { $ilike: `%${q}%` } },
|
|
14
|
+
];
|
|
15
|
+
delete req.validatedQuery.q;
|
|
16
|
+
}
|
|
17
|
+
next();
|
|
18
|
+
};
|
|
19
|
+
exports.handleSearchMiddleware = handleSearchMiddleware;
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL2VycC1ldmVudC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHTyxNQUFNLHNCQUFzQixHQUFHLENBQ2xDLEdBQWtCLEVBQ2xCLElBQW9CLEVBQ3BCLElBQXdCLEVBQ3hCLEVBQUU7SUFDRixNQUFNLEVBQUUsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUM7SUFFdkMsSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDL0IsR0FBRyxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUM7UUFFbEQsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsR0FBRztZQUN6QixFQUFFLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDaEMsRUFBRSxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3BDLEVBQUUsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUN6QyxFQUFFLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDckMsRUFBRSxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFO1NBQ2pDLENBQUM7UUFFRixPQUFPLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLEVBQUUsQ0FBQztBQUNULENBQUMsQ0FBQztBQXRCUyxRQUFBLHNCQUFzQiwwQkFzQi9CIn0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AdminGetErpEventParams = void 0;
|
|
4
|
+
const validators_1 = require("@medusajs/medusa/api/utils/validators");
|
|
5
|
+
exports.AdminGetErpEventParams = (0, validators_1.createFindParams)({
|
|
6
|
+
offset: 0,
|
|
7
|
+
limit: 1000,
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvYWRtaW4vZXJwLWV2ZW50L3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esc0VBQXlFO0FBRzVELFFBQUEsc0JBQXNCLEdBQUcsSUFBQSw2QkFBZ0IsRUFBQztJQUNyRCxNQUFNLEVBQUUsQ0FBQztJQUNULEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQyxDQUFDIn0=
|
|
@@ -0,0 +1,11 @@
|
|
|
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
|
+
const framework_1 = require("@medusajs/framework");
|
|
7
|
+
const middlewares_1 = __importDefault(require("./erp-event/middlewares"));
|
|
8
|
+
exports.default = (0, framework_1.defineMiddlewares)({
|
|
9
|
+
routes: [...(middlewares_1.default.routes || [])],
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbURBQXdEO0FBRXhELDBFQUErRDtBQUUvRCxrQkFBZSxJQUFBLDZCQUFpQixFQUFDO0lBQy9CLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxxQkFBd0IsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUM7Q0FDckQsQ0FBQyxDQUFDIn0=
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DELETE_ONLY_IDS_MASTERS = exports.MASTER_WORKFLOW_CONFIG = void 0;
|
|
4
|
+
exports.getWorkflowInput = getWorkflowInput;
|
|
5
|
+
const category_group_master_1 = require("../../../workflows/category-group-master");
|
|
6
|
+
const category_master_1 = require("../../../workflows/category-master");
|
|
7
|
+
const collection_group_master_1 = require("../../../workflows/collection-group-master");
|
|
8
|
+
const collection_master_1 = require("../../../workflows/collection-master");
|
|
9
|
+
const party_master_1 = require("../../../workflows/party-master");
|
|
10
|
+
const party_style_master_1 = require("../../../workflows/party-style-master");
|
|
11
|
+
const raw_master_1 = require("../../../workflows/raw-master");
|
|
12
|
+
const shape_master_1 = require("../../../workflows/shape-master");
|
|
13
|
+
const workflows_1 = require("../../../workflows/style-master/workflows");
|
|
14
|
+
const sub_category_master_1 = require("../../../workflows/sub-category-master");
|
|
15
|
+
/**
|
|
16
|
+
* Configuration for different master types and their workflows
|
|
17
|
+
* This makes it easy to add new master types or modify existing ones
|
|
18
|
+
*/
|
|
19
|
+
exports.MASTER_WORKFLOW_CONFIG = {
|
|
20
|
+
StyleMst: {
|
|
21
|
+
delete: (scope, data) => (0, workflows_1.deleteStyleMasterWorkflow)(scope).run({ input: { ids: data } }),
|
|
22
|
+
add: (scope, input) => (0, workflows_1.createOrUpdateStyleMasterWorkflow)(scope).run({ input }),
|
|
23
|
+
update: (scope, input) => (0, workflows_1.createOrUpdateStyleMasterWorkflow)(scope).run({ input }),
|
|
24
|
+
},
|
|
25
|
+
PartyStyleMst: {
|
|
26
|
+
delete: (scope, data) => (0, party_style_master_1.deletePartyStyleMasterWorkflow)(scope).run({ input: { ids: data } }),
|
|
27
|
+
add: (scope, input) => (0, party_style_master_1.createOrUpdatePartyStyleMasterWorkflow)(scope).run({ input }),
|
|
28
|
+
update: (scope, input) => (0, party_style_master_1.createOrUpdatePartyStyleMasterWorkflow)(scope).run({ input }),
|
|
29
|
+
},
|
|
30
|
+
ShapeMst: {
|
|
31
|
+
delete: (scope, input) => (0, shape_master_1.shapeMasterWorkflow)(scope).run({ input }),
|
|
32
|
+
add: (scope, input) => (0, shape_master_1.shapeMasterWorkflow)(scope).run({ input }),
|
|
33
|
+
update: (scope, input) => (0, shape_master_1.shapeMasterWorkflow)(scope).run({ input }),
|
|
34
|
+
},
|
|
35
|
+
RawMst: {
|
|
36
|
+
delete: (scope, input) => (0, raw_master_1.rawMasterWorkflow)(scope).run({ input }),
|
|
37
|
+
add: (scope, input) => (0, raw_master_1.rawMasterWorkflow)(scope).run({ input }),
|
|
38
|
+
update: (scope, input) => (0, raw_master_1.rawMasterWorkflow)(scope).run({ input }),
|
|
39
|
+
},
|
|
40
|
+
CollectionMst: {
|
|
41
|
+
delete: (scope, input) => (0, collection_master_1.collectionMasterWorkflow)(scope).run({ input }),
|
|
42
|
+
add: (scope, input) => (0, collection_master_1.collectionMasterWorkflow)(scope).run({ input }),
|
|
43
|
+
update: (scope, input) => (0, collection_master_1.collectionMasterWorkflow)(scope).run({ input }),
|
|
44
|
+
},
|
|
45
|
+
SubCategoryMst: {
|
|
46
|
+
delete: (scope, input) => (0, sub_category_master_1.subCategoryMasterWorkflow)(scope).run({ input }),
|
|
47
|
+
add: (scope, input) => (0, sub_category_master_1.subCategoryMasterWorkflow)(scope).run({ input }),
|
|
48
|
+
update: (scope, input) => (0, sub_category_master_1.subCategoryMasterWorkflow)(scope).run({ input }),
|
|
49
|
+
},
|
|
50
|
+
CategoryMst: {
|
|
51
|
+
delete: (scope, input) => (0, category_master_1.categoryMasterWorkflow)(scope).run({ input }),
|
|
52
|
+
add: (scope, input) => (0, category_master_1.categoryMasterWorkflow)(scope).run({ input }),
|
|
53
|
+
update: (scope, input) => (0, category_master_1.categoryMasterWorkflow)(scope).run({ input }),
|
|
54
|
+
},
|
|
55
|
+
CategoryGroupMst: {
|
|
56
|
+
delete: (scope, input) => (0, category_group_master_1.categoryGroupMasterWorkflow)(scope).run({ input }),
|
|
57
|
+
add: (scope, input) => (0, category_group_master_1.categoryGroupMasterWorkflow)(scope).run({ input }),
|
|
58
|
+
update: (scope, input) => (0, category_group_master_1.categoryGroupMasterWorkflow)(scope).run({ input }),
|
|
59
|
+
},
|
|
60
|
+
CollectionGroupMst: {
|
|
61
|
+
delete: (scope, input) => (0, collection_group_master_1.collectionGroupMasterWorkflow)(scope).run({ input }),
|
|
62
|
+
add: (scope, input) => (0, collection_group_master_1.collectionGroupMasterWorkflow)(scope).run({ input }),
|
|
63
|
+
update: (scope, input) => (0, collection_group_master_1.collectionGroupMasterWorkflow)(scope).run({ input }),
|
|
64
|
+
},
|
|
65
|
+
PartyMst: {
|
|
66
|
+
delete: (scope, input) => (0, party_master_1.partyMasterWorkflow)(scope).run({ input }),
|
|
67
|
+
add: (scope, input) => (0, party_master_1.partyMasterWorkflow)(scope).run({ input }),
|
|
68
|
+
update: (scope, input) => (0, party_master_1.partyMasterWorkflow)(scope).run({ input }),
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Master types that expect only the ids array for delete operations
|
|
73
|
+
*/
|
|
74
|
+
exports.DELETE_ONLY_IDS_MASTERS = [
|
|
75
|
+
"StyleMst",
|
|
76
|
+
"PartyStyleMst",
|
|
77
|
+
];
|
|
78
|
+
/**
|
|
79
|
+
* Helper function to determine the input format for a workflow
|
|
80
|
+
*/
|
|
81
|
+
function getWorkflowInput(datafor, operation, data) {
|
|
82
|
+
// For delete operations, some workflows expect just the ids array
|
|
83
|
+
if (operation === "delete" && exports.DELETE_ONLY_IDS_MASTERS.includes(datafor)) {
|
|
84
|
+
return data;
|
|
85
|
+
}
|
|
86
|
+
return { datafor, operation, data };
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwaS9lcnAvd2ViaG9vay9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBb0lBLDRDQVdDO0FBL0lELG9GQUF1RjtBQUN2Rix3RUFBNEU7QUFDNUUsd0ZBQTJGO0FBQzNGLDRFQUFnRjtBQUNoRixrRUFBc0U7QUFDdEUsOEVBRytDO0FBQy9DLDhEQUFrRTtBQUNsRSxrRUFBc0U7QUFDdEUseUVBR21EO0FBQ25ELGdGQUFtRjtBQXdCbkY7OztHQUdHO0FBQ1UsUUFBQSxzQkFBc0IsR0FBdUM7SUFDeEUsUUFBUSxFQUFFO1FBQ1IsTUFBTSxFQUFFLENBQUMsS0FBVSxFQUFFLElBQWMsRUFBRSxFQUFFLENBQ3JDLElBQUEscUNBQXlCLEVBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7UUFDaEUsR0FBRyxFQUFFLENBQUMsS0FBVSxFQUFFLEtBQVUsRUFBRSxFQUFFLENBQzlCLElBQUEsNkNBQWlDLEVBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDekQsTUFBTSxFQUFFLENBQUMsS0FBVSxFQUFFLEtBQVUsRUFBRSxFQUFFLENBQ2pDLElBQUEsNkNBQWlDLEVBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7S0FDMUQ7SUFDRCxhQUFhLEVBQUU7UUFDYixNQUFNLEVBQUUsQ0FBQyxLQUFVLEVBQUUsSUFBYyxFQUFFLEVBQUUsQ0FDckMsSUFBQSxtREFBOEIsRUFBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUNyRSxHQUFHLEVBQUUsQ0FBQyxLQUFVLEVBQUUsS0FB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
|
|
@@ -1,33 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.POST = POST;
|
|
7
4
|
const framework_1 = require("@medusajs/framework");
|
|
8
|
-
const category_group_master_1 = require("../../../workflows/category-group-master");
|
|
9
|
-
const category_master_1 = require("../../../workflows/category-master");
|
|
10
|
-
const collection_group_master_1 = require("../../../workflows/collection-group-master");
|
|
11
|
-
const collection_master_1 = require("../../../workflows/collection-master");
|
|
12
|
-
const create_or_update_party_style_master_1 = __importDefault(require("../../../workflows/create-or-update-party-style-master"));
|
|
13
|
-
const create_or_update_style_master_1 = __importDefault(require("../../../workflows/create-or-update-style-master"));
|
|
14
5
|
const erp_event_1 = require("../../../workflows/erp-event");
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
6
|
+
const config_1 = require("./config");
|
|
7
|
+
const utils_1 = require("./utils");
|
|
8
|
+
/**
|
|
9
|
+
* Processes the webhook request by executing the appropriate workflow
|
|
10
|
+
*/
|
|
11
|
+
async function processWebhookRequest(scope, datafor, operation, data) {
|
|
12
|
+
const workflowConfig = config_1.MASTER_WORKFLOW_CONFIG[datafor];
|
|
13
|
+
if (!workflowConfig) {
|
|
14
|
+
throw new Error(`Unsupported datafor type: ${datafor}`);
|
|
15
|
+
}
|
|
16
|
+
const workflowHandler = workflowConfig[operation];
|
|
17
|
+
if (!workflowHandler) {
|
|
18
|
+
throw new Error(`Unsupported operation: ${operation} for ${datafor}`);
|
|
19
|
+
}
|
|
20
|
+
const input = (0, config_1.getWorkflowInput)(datafor, operation, data);
|
|
21
|
+
await workflowHandler(scope, input);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Handles the webhook request
|
|
25
|
+
*/
|
|
19
26
|
async function POST(req, res) {
|
|
20
27
|
try {
|
|
21
|
-
|
|
22
|
-
if (!
|
|
23
|
-
|
|
24
|
-
status: false,
|
|
25
|
-
message: "Invalid request body. Required fields: datafor, operation, data (array)",
|
|
26
|
-
});
|
|
28
|
+
// Validate request body
|
|
29
|
+
if (!(0, utils_1.validateWebhookRequest)(req.body)) {
|
|
30
|
+
(0, utils_1.sendErrorResponse)(res, 400, "Invalid request body. Required fields: datafor, operation (add|update|delete), data (array)");
|
|
27
31
|
return;
|
|
28
32
|
}
|
|
33
|
+
const { datafor, operation, data } = req.body;
|
|
29
34
|
// Log the received data
|
|
30
35
|
framework_1.logger.info(`Received webhook: ${operation} for ${datafor} with ${data.length} items`);
|
|
36
|
+
// Always log ERP event first
|
|
31
37
|
await (0, erp_event_1.erpEventWorkflow)(req.scope).run({
|
|
32
38
|
input: {
|
|
33
39
|
datafor,
|
|
@@ -35,115 +41,15 @@ async function POST(req, res) {
|
|
|
35
41
|
data,
|
|
36
42
|
},
|
|
37
43
|
});
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
input: {
|
|
42
|
-
datafor,
|
|
43
|
-
operation,
|
|
44
|
-
data,
|
|
45
|
-
},
|
|
46
|
-
});
|
|
47
|
-
break;
|
|
48
|
-
case "PartyStyleMst":
|
|
49
|
-
await (0, create_or_update_party_style_master_1.default)(req.scope).run({
|
|
50
|
-
input: {
|
|
51
|
-
datafor,
|
|
52
|
-
operation,
|
|
53
|
-
data,
|
|
54
|
-
},
|
|
55
|
-
});
|
|
56
|
-
break;
|
|
57
|
-
case "ShapeMst":
|
|
58
|
-
await (0, shape_master_1.shapeMasterWorkflow)(req.scope).run({
|
|
59
|
-
input: {
|
|
60
|
-
datafor,
|
|
61
|
-
operation,
|
|
62
|
-
data,
|
|
63
|
-
},
|
|
64
|
-
});
|
|
65
|
-
break;
|
|
66
|
-
case "RawMst":
|
|
67
|
-
await (0, raw_master_1.rawMasterWorkflow)(req.scope).run({
|
|
68
|
-
input: {
|
|
69
|
-
datafor,
|
|
70
|
-
operation,
|
|
71
|
-
data,
|
|
72
|
-
},
|
|
73
|
-
});
|
|
74
|
-
break;
|
|
75
|
-
case "CollectionMst":
|
|
76
|
-
await (0, collection_master_1.collectionMasterWorkflow)(req.scope).run({
|
|
77
|
-
input: {
|
|
78
|
-
datafor,
|
|
79
|
-
operation,
|
|
80
|
-
data,
|
|
81
|
-
},
|
|
82
|
-
});
|
|
83
|
-
break;
|
|
84
|
-
case "SubCategoryMst":
|
|
85
|
-
await (0, sub_category_master_1.subCategoryMasterWorkflow)(req.scope).run({
|
|
86
|
-
input: {
|
|
87
|
-
datafor,
|
|
88
|
-
operation,
|
|
89
|
-
data,
|
|
90
|
-
},
|
|
91
|
-
});
|
|
92
|
-
break;
|
|
93
|
-
case "CategoryMst":
|
|
94
|
-
await (0, category_master_1.categoryMasterWorkflow)(req.scope).run({
|
|
95
|
-
input: {
|
|
96
|
-
datafor,
|
|
97
|
-
operation,
|
|
98
|
-
data,
|
|
99
|
-
},
|
|
100
|
-
});
|
|
101
|
-
break;
|
|
102
|
-
case "CategoryGroupMst":
|
|
103
|
-
await (0, category_group_master_1.categoryGroupMasterWorkflow)(req.scope).run({
|
|
104
|
-
input: {
|
|
105
|
-
datafor,
|
|
106
|
-
operation,
|
|
107
|
-
data,
|
|
108
|
-
},
|
|
109
|
-
});
|
|
110
|
-
break;
|
|
111
|
-
case "CollectionGroupMst":
|
|
112
|
-
await (0, collection_group_master_1.collectionGroupMasterWorkflow)(req.scope).run({
|
|
113
|
-
input: {
|
|
114
|
-
datafor,
|
|
115
|
-
operation,
|
|
116
|
-
data,
|
|
117
|
-
},
|
|
118
|
-
});
|
|
119
|
-
break;
|
|
120
|
-
case "PartyMst":
|
|
121
|
-
await (0, party_master_1.partyMasterWorkflow)(req.scope).run({
|
|
122
|
-
input: {
|
|
123
|
-
datafor,
|
|
124
|
-
operation,
|
|
125
|
-
data,
|
|
126
|
-
},
|
|
127
|
-
});
|
|
128
|
-
break;
|
|
129
|
-
default:
|
|
130
|
-
res.status(400).json({
|
|
131
|
-
status: false,
|
|
132
|
-
message: `Unsupported datafor type: ${datafor}`,
|
|
133
|
-
});
|
|
134
|
-
return;
|
|
135
|
-
}
|
|
136
|
-
res.status(200).json({
|
|
137
|
-
status: true,
|
|
138
|
-
message: `Successfully processed ${operation} for ${datafor}`,
|
|
139
|
-
});
|
|
44
|
+
// Process the webhook request
|
|
45
|
+
await processWebhookRequest(req.scope, datafor, operation, data);
|
|
46
|
+
(0, utils_1.sendSuccessResponse)(res, `Successfully processed ${operation} for ${datafor}`);
|
|
140
47
|
}
|
|
141
48
|
catch (error) {
|
|
142
49
|
framework_1.logger.error("Error processing webhook:", error);
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
});
|
|
50
|
+
// Provide more specific error messages
|
|
51
|
+
const errorMessage = error instanceof Error ? error.message : "Internal server error";
|
|
52
|
+
(0, utils_1.sendErrorResponse)(res, 500, errorMessage);
|
|
147
53
|
}
|
|
148
54
|
}
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2VycC93ZWJob29rL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBNkNBLG9CQW9EQztBQWpHRCxtREFBNkM7QUFHN0MsNERBQWdFO0FBRWhFLHFDQUtrQjtBQUNsQixtQ0FJaUI7QUFFakI7O0dBRUc7QUFDSCxLQUFLLFVBQVUscUJBQXFCLENBQ2xDLEtBQVUsRUFDVixPQUFtQixFQUNuQixTQUFvQixFQUNwQixJQUFjO0lBRWQsTUFBTSxjQUFjLEdBQUcsK0JBQXNCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFdkQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELE1BQU0sZUFBZSxHQUFHLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUVsRCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsU0FBUyxRQUFRLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLElBQUEseUJBQWdCLEVBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN6RCxNQUFNLGVBQWUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDdEMsQ0FBQztBQUVEOztHQUVHO0FBQ0ksS0FBSyxVQUFVLElBQUksQ0FDeEIsR0FBa0IsRUFDbEIsR0FBbUI7SUFFbkIsSUFBSSxDQUFDO1FBQ0gsd0JBQXdCO1FBQ3hCLElBQUksQ0FBQyxJQUFBLDhCQUFzQixFQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3RDLElBQUEseUJBQWlCLEVBQ2YsR0FBRyxFQUNILEdBQUcsRUFDSCw2RkFBNkYsQ0FDOUYsQ0FBQztZQUNGLE9BQU87UUFDVCxDQUFDO1FBRUQsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQXNCLENBQUM7UUFFaEUsd0JBQXdCO1FBQ3hCLGtCQUFNLENBQUMsSUFBSSxDQUNULHFCQUFxQixTQUFTLFFBQVEsT0FBTyxTQUFTLElBQUksQ0FBQyxNQUFNLFFBQVEsQ0FDMUUsQ0FBQztRQUVGLDZCQUE2QjtRQUM3QixNQUFNLElBQUEsNEJBQWdCLEVBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUNwQyxLQUFLLEVBQUU7Z0JBQ0wsT0FBTztnQkFDUCxTQUFTO2dCQUNULElBQUk7YUFDTDtTQUNGLENBQUMsQ0FBQztRQUVILDhCQUE4QjtRQUM5QixNQUFNLHFCQUFxQixDQUN6QixHQUFHLENBQUMsS0FBSyxFQUNULE9BQXFCLEVBQ3JCLFNBQVMsRUFDVCxJQUFJLENBQ0wsQ0FBQztRQUVGLElBQUEsMkJBQW1CLEVBQ2pCLEdBQUcsRUFDSCwwQkFBMEIsU0FBUyxRQUFRLE9BQU8sRUFBRSxDQUNyRCxDQUFDO0lBQ0osQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixrQkFBTSxDQUFDLEtBQUssQ0FBQywyQkFBMkIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVqRCx1Q0FBdUM7UUFDdkMsTUFBTSxZQUFZLEdBQ2hCLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDO1FBRW5FLElBQUEseUJBQWlCLEVBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM1QyxDQUFDO0FBQ0gsQ0FBQyJ9
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateWebhookRequest = validateWebhookRequest;
|
|
4
|
+
exports.sendErrorResponse = sendErrorResponse;
|
|
5
|
+
exports.sendSuccessResponse = sendSuccessResponse;
|
|
6
|
+
exports.isSupportedMasterType = isSupportedMasterType;
|
|
7
|
+
exports.isSupportedOperation = isSupportedOperation;
|
|
8
|
+
/**
|
|
9
|
+
* Validates the webhook request body
|
|
10
|
+
*/
|
|
11
|
+
function validateWebhookRequest(body) {
|
|
12
|
+
return (body &&
|
|
13
|
+
typeof body.datafor === "string" &&
|
|
14
|
+
["add", "update", "delete"].includes(body.operation) &&
|
|
15
|
+
Array.isArray(body.data));
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Sends a standardized error response
|
|
19
|
+
*/
|
|
20
|
+
function sendErrorResponse(res, statusCode, message, data) {
|
|
21
|
+
res.status(statusCode).json({
|
|
22
|
+
status: false,
|
|
23
|
+
message,
|
|
24
|
+
...(data && { data }),
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Sends a standardized success response
|
|
29
|
+
*/
|
|
30
|
+
function sendSuccessResponse(res, message, data) {
|
|
31
|
+
res.status(200).json({
|
|
32
|
+
status: true,
|
|
33
|
+
message,
|
|
34
|
+
...(data && { data }),
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Validates that the datafor type is supported
|
|
39
|
+
*/
|
|
40
|
+
function isSupportedMasterType(datafor) {
|
|
41
|
+
const supportedTypes = [
|
|
42
|
+
"StyleMst",
|
|
43
|
+
"PartyStyleMst",
|
|
44
|
+
"ShapeMst",
|
|
45
|
+
"RawMst",
|
|
46
|
+
"CollectionMst",
|
|
47
|
+
"SubCategoryMst",
|
|
48
|
+
"CategoryMst",
|
|
49
|
+
"CategoryGroupMst",
|
|
50
|
+
"CollectionGroupMst",
|
|
51
|
+
"PartyMst",
|
|
52
|
+
];
|
|
53
|
+
return supportedTypes.includes(datafor);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Validates that the operation is supported
|
|
57
|
+
*/
|
|
58
|
+
function isSupportedOperation(operation) {
|
|
59
|
+
return ["add", "update", "delete"].includes(operation);
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2VycC93ZWJob29rL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBZUEsd0RBT0M7QUFLRCw4Q0FXQztBQUtELGtEQVVDO0FBS0Qsc0RBZUM7QUFLRCxvREFFQztBQXBFRDs7R0FFRztBQUNILFNBQWdCLHNCQUFzQixDQUFDLElBQVM7SUFDOUMsT0FBTyxDQUNMLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssUUFBUTtRQUNoQyxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDcEQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQ3pCLENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixpQkFBaUIsQ0FDL0IsR0FBbUIsRUFDbkIsVUFBa0IsRUFDbEIsT0FBZSxFQUNmLElBQVU7SUFFVixHQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMxQixNQUFNLEVBQUUsS0FBSztRQUNiLE9BQU87UUFDUCxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDdEIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQ2pDLEdBQW1CLEVBQ25CLE9BQWUsRUFDZixJQUFVO0lBRVYsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDbkIsTUFBTSxFQUFFLElBQUk7UUFDWixPQUFPO1FBQ1AsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0tBQ3RCLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLHFCQUFxQixDQUFDLE9BQWU7SUFDbkQsTUFBTSxjQUFjLEdBQUc7UUFDckIsVUFBVTtRQUNWLGVBQWU7UUFDZixVQUFVO1FBQ1YsUUFBUTtRQUNSLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixvQkFBb0I7UUFDcEIsVUFBVTtLQUNYLENBQUM7SUFFRixPQUFPLGNBQWMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDMUMsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsU0FBaUI7SUFDcEQsT0FBTyxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3pELENBQUMifQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
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
|
+
//Root middleware for all routes
|
|
7
|
+
const medusa_1 = require("@medusajs/medusa");
|
|
8
|
+
const middlewares_1 = __importDefault(require("./admin/middlewares"));
|
|
9
|
+
exports.default = (0, medusa_1.defineMiddlewares)({
|
|
10
|
+
routes: [...(middlewares_1.default.routes || [])],
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBpL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0NBQWdDO0FBQ2hDLDZDQUFxRDtBQUVyRCxzRUFBbUQ7QUFFbkQsa0JBQWUsSUFBQSwwQkFBaUIsRUFBQztJQUMvQixNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMscUJBQWdCLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0NBQzdDLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ErrorCode = exports.HttpStatus = void 0;
|
|
4
|
+
exports.createSuccessResponse = createSuccessResponse;
|
|
5
|
+
exports.createErrorResponse = createErrorResponse;
|
|
6
|
+
exports.sendApiResponse = sendApiResponse;
|
|
7
|
+
exports.createValidationErrorResponse = createValidationErrorResponse;
|
|
8
|
+
exports.createAuthenticationErrorResponse = createAuthenticationErrorResponse;
|
|
9
|
+
exports.createNotFoundErrorResponse = createNotFoundErrorResponse;
|
|
10
|
+
exports.createInternalErrorResponse = createInternalErrorResponse;
|
|
11
|
+
/**
|
|
12
|
+
* Standard HTTP status codes
|
|
13
|
+
*/
|
|
14
|
+
var HttpStatus;
|
|
15
|
+
(function (HttpStatus) {
|
|
16
|
+
HttpStatus[HttpStatus["OK"] = 200] = "OK";
|
|
17
|
+
HttpStatus[HttpStatus["CREATED"] = 201] = "CREATED";
|
|
18
|
+
HttpStatus[HttpStatus["BAD_REQUEST"] = 400] = "BAD_REQUEST";
|
|
19
|
+
HttpStatus[HttpStatus["UNAUTHORIZED"] = 401] = "UNAUTHORIZED";
|
|
20
|
+
HttpStatus[HttpStatus["FORBIDDEN"] = 403] = "FORBIDDEN";
|
|
21
|
+
HttpStatus[HttpStatus["NOT_FOUND"] = 404] = "NOT_FOUND";
|
|
22
|
+
HttpStatus[HttpStatus["INTERNAL_SERVER_ERROR"] = 500] = "INTERNAL_SERVER_ERROR";
|
|
23
|
+
})(HttpStatus || (exports.HttpStatus = HttpStatus = {}));
|
|
24
|
+
/**
|
|
25
|
+
* Standard error codes
|
|
26
|
+
*/
|
|
27
|
+
var ErrorCode;
|
|
28
|
+
(function (ErrorCode) {
|
|
29
|
+
ErrorCode["VALIDATION_ERROR"] = "VALIDATION_ERROR";
|
|
30
|
+
ErrorCode["AUTHENTICATION_ERROR"] = "AUTHENTICATION_ERROR";
|
|
31
|
+
ErrorCode["AUTHORIZATION_ERROR"] = "AUTHORIZATION_ERROR";
|
|
32
|
+
ErrorCode["NOT_FOUND_ERROR"] = "NOT_FOUND_ERROR";
|
|
33
|
+
ErrorCode["INTERNAL_ERROR"] = "INTERNAL_ERROR";
|
|
34
|
+
ErrorCode["NOT_FOUND"] = "NOT_FOUND";
|
|
35
|
+
})(ErrorCode || (exports.ErrorCode = ErrorCode = {}));
|
|
36
|
+
/**
|
|
37
|
+
* Creates a success response with standard format
|
|
38
|
+
* @param data Response data
|
|
39
|
+
* @param message Success message (defaults to "OK")
|
|
40
|
+
* @param status HTTP status code (defaults to 200)
|
|
41
|
+
* @returns Standardized success response
|
|
42
|
+
*/
|
|
43
|
+
function createSuccessResponse(data, message = "OK", status = HttpStatus.OK) {
|
|
44
|
+
return {
|
|
45
|
+
data,
|
|
46
|
+
message,
|
|
47
|
+
status,
|
|
48
|
+
success: true,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Creates an error response with standard format
|
|
53
|
+
* @param message Error message
|
|
54
|
+
* @param status HTTP status code
|
|
55
|
+
* @param code Error code
|
|
56
|
+
* @param details Additional error details
|
|
57
|
+
* @returns Standardized error response
|
|
58
|
+
*/
|
|
59
|
+
function createErrorResponse(message, status, code, details) {
|
|
60
|
+
return {
|
|
61
|
+
data: null,
|
|
62
|
+
message,
|
|
63
|
+
status,
|
|
64
|
+
success: false,
|
|
65
|
+
error: {
|
|
66
|
+
code,
|
|
67
|
+
details,
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Utility function to send a standardized API response
|
|
73
|
+
* @param res Response object
|
|
74
|
+
* @param response Standardized API response
|
|
75
|
+
*/
|
|
76
|
+
function sendApiResponse(res, response) {
|
|
77
|
+
res.status(response.status).json(response);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Helper function to create validation error response
|
|
81
|
+
*/
|
|
82
|
+
function createValidationErrorResponse(message, details) {
|
|
83
|
+
return createErrorResponse(message, HttpStatus.BAD_REQUEST, ErrorCode.VALIDATION_ERROR, details);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Helper function to create authentication error response
|
|
87
|
+
*/
|
|
88
|
+
function createAuthenticationErrorResponse(message = "Unauthorized") {
|
|
89
|
+
return createErrorResponse(message, HttpStatus.UNAUTHORIZED, ErrorCode.AUTHENTICATION_ERROR);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Helper function to create not found error response
|
|
93
|
+
*/
|
|
94
|
+
function createNotFoundErrorResponse(message = "Resource not found") {
|
|
95
|
+
return createErrorResponse(message, HttpStatus.NOT_FOUND, ErrorCode.NOT_FOUND_ERROR);
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Helper function to create internal server error response
|
|
99
|
+
*/
|
|
100
|
+
function createInternalErrorResponse(message = "Internal server error") {
|
|
101
|
+
return createErrorResponse(message, HttpStatus.INTERNAL_SERVER_ERROR, ErrorCode.INTERNAL_ERROR);
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXJlc3BvbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9hcGktcmVzcG9uc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBZ0RBLHNEQVdDO0FBVUQsa0RBZ0JDO0FBT0QsMENBS0M7QUFLRCxzRUFVQztBQUtELDhFQVFDO0FBS0Qsa0VBUUM7QUFLRCxrRUFRQztBQXZJRDs7R0FFRztBQUNILElBQVksVUFRWDtBQVJELFdBQVksVUFBVTtJQUNwQix5Q0FBUSxDQUFBO0lBQ1IsbURBQWEsQ0FBQTtJQUNiLDJEQUFpQixDQUFBO0lBQ2pCLDZEQUFrQixDQUFBO0lBQ2xCLHVEQUFlLENBQUE7SUFDZix1REFBZSxDQUFBO0lBQ2YsK0VBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQVJXLFVBQVUsMEJBQVYsVUFBVSxRQVFyQjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxTQU9YO0FBUEQsV0FBWSxTQUFTO0lBQ25CLGtEQUFxQyxDQUFBO0lBQ3JDLDBEQUE2QyxDQUFBO0lBQzdDLHdEQUEyQyxDQUFBO0lBQzNDLGdEQUFtQyxDQUFBO0lBQ25DLDhDQUFpQyxDQUFBO0lBQ2pDLG9DQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFQVyxTQUFTLHlCQUFULFNBQVMsUUFPcEI7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQixxQkFBcUIsQ0FDbkMsSUFBTyxFQUNQLE9BQU8sR0FBRyxJQUFJLEVBQ2QsTUFBTSxHQUFHLFVBQVUsQ0FBQyxFQUFFO0lBRXRCLE9BQU87UUFDTCxJQUFJO1FBQ0osT0FBTztRQUNQLE1BQU07UUFDTixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLG1CQUFtQixDQUNqQyxPQUFlLEVBQ2YsTUFBa0IsRUFDbEIsSUFBZSxFQUNmLE9BQWlDO0lBRWpDLE9BQU87UUFDTCxJQUFJLEVBQUUsSUFBSTtRQUNWLE9BQU87UUFDUCxNQUFNO1FBQ04sT0FBTyxFQUFFLEtBQUs7UUFDZCxLQUFLLEVBQUU7WUFDTCxJQUFJO1lBQ0osT0FBTztTQUNSO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsZUFBZSxDQUM3QixHQUFtQixFQUNuQixRQUF3QjtJQUV4QixHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0MsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsNkJBQTZCLENBQzNDLE9BQWUsRUFDZixPQUFpQztJQUVqQyxPQUFPLG1CQUFtQixDQUN4QixPQUFPLEVBQ1AsVUFBVSxDQUFDLFdBQVcsRUFDdEIsU0FBUyxDQUFDLGdCQUFnQixFQUMxQixPQUFPLENBQ1IsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGlDQUFpQyxDQUMvQyxPQUFPLEdBQUcsY0FBYztJQUV4QixPQUFPLG1CQUFtQixDQUN4QixPQUFPLEVBQ1AsVUFBVSxDQUFDLFlBQVksRUFDdkIsU0FBUyxDQUFDLG9CQUFvQixDQUMvQixDQUFDO0FBQ0osQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsMkJBQTJCLENBQ3pDLE9BQU8sR0FBRyxvQkFBb0I7SUFFOUIsT0FBTyxtQkFBbUIsQ0FDeEIsT0FBTyxFQUNQLFVBQVUsQ0FBQyxTQUFTLEVBQ3BCLFNBQVMsQ0FBQyxlQUFlLENBQzFCLENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiwyQkFBMkIsQ0FDekMsT0FBTyxHQUFHLHVCQUF1QjtJQUVqQyxPQUFPLG1CQUFtQixDQUN4QixPQUFPLEVBQ1AsVUFBVSxDQUFDLHFCQUFxQixFQUNoQyxTQUFTLENBQUMsY0FBYyxDQUN6QixDQUFDO0FBQ0osQ0FBQyJ9
|