@codee-sh/medusa-plugin-automations 1.0.0

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.
Files changed (78) hide show
  1. package/.medusa/server/src/admin/index.js +9931 -0
  2. package/.medusa/server/src/admin/index.mjs +9929 -0
  3. package/.medusa/server/src/admin/lib/sdk.js +15 -0
  4. package/.medusa/server/src/api/admin/mpn/automations/actions/route.js +78 -0
  5. package/.medusa/server/src/api/admin/mpn/automations/available-actions/route.js +12 -0
  6. package/.medusa/server/src/api/admin/mpn/automations/available-events/route.js +14 -0
  7. package/.medusa/server/src/api/admin/mpn/automations/available-triggers/route.js +12 -0
  8. package/.medusa/server/src/api/admin/mpn/automations/route.js +71 -0
  9. package/.medusa/server/src/api/admin/mpn/automations/rules/route.js +85 -0
  10. package/.medusa/server/src/api/middlewares.js +125 -0
  11. package/.medusa/server/src/emails/example-template.js +68 -0
  12. package/.medusa/server/src/hooks/api/automations/automations.js +74 -0
  13. package/.medusa/server/src/hooks/api/automations/index.js +18 -0
  14. package/.medusa/server/src/hooks/api/automations-actions/automations-actions.js +51 -0
  15. package/.medusa/server/src/hooks/api/automations-actions/index.js +18 -0
  16. package/.medusa/server/src/hooks/api/automations-rules/automations-rules.js +51 -0
  17. package/.medusa/server/src/hooks/api/automations-rules/index.js +18 -0
  18. package/.medusa/server/src/hooks/api/available-actions/actions.js +34 -0
  19. package/.medusa/server/src/hooks/api/available-actions/index.js +18 -0
  20. package/.medusa/server/src/hooks/api/available-events/events.js +34 -0
  21. package/.medusa/server/src/hooks/api/available-events/index.js +18 -0
  22. package/.medusa/server/src/hooks/api/available-triggers/index.js +18 -0
  23. package/.medusa/server/src/hooks/api/available-triggers/triggers.js +34 -0
  24. package/.medusa/server/src/modules/mpn-automation/index.js +10 -0
  25. package/.medusa/server/src/modules/mpn-automation/interfaces.js +3 -0
  26. package/.medusa/server/src/modules/mpn-automation/migrations/Migration20251127115228.js +37 -0
  27. package/.medusa/server/src/modules/mpn-automation/migrations/Migration20251127193345.js +20 -0
  28. package/.medusa/server/src/modules/mpn-automation/migrations/Migration20251127195615.js +19 -0
  29. package/.medusa/server/src/modules/mpn-automation/migrations/Migration20251130144047.js +16 -0
  30. package/.medusa/server/src/modules/mpn-automation/models/index.js +14 -0
  31. package/.medusa/server/src/modules/mpn-automation/models/mpn_automation_rule.js +27 -0
  32. package/.medusa/server/src/modules/mpn-automation/models/mpn_automation_rule_value.js +15 -0
  33. package/.medusa/server/src/modules/mpn-automation/models/mpn_automation_state.js +17 -0
  34. package/.medusa/server/src/modules/mpn-automation/models/mpn_automation_trigger.js +52 -0
  35. package/.medusa/server/src/modules/mpn-automation/models/npm_automation_action.js +23 -0
  36. package/.medusa/server/src/modules/mpn-automation/services/index.js +9 -0
  37. package/.medusa/server/src/modules/mpn-automation/services/service.js +38 -0
  38. package/.medusa/server/src/modules/mpn-automation/types.js +199 -0
  39. package/.medusa/server/src/subscribers/inventory-item-updated.js +22 -0
  40. package/.medusa/server/src/subscribers/inventory-level-updated.js +43 -0
  41. package/.medusa/server/src/subscribers/inventory-reservation-item-updated.js +22 -0
  42. package/.medusa/server/src/subscribers/mpn.automation.action.email.executed.js +45 -0
  43. package/.medusa/server/src/subscribers/order-completed.js +110 -0
  44. package/.medusa/server/src/subscribers/order-placed.js +108 -0
  45. package/.medusa/server/src/subscribers/payment-captured.js +96 -0
  46. package/.medusa/server/src/utils/index.js +20 -0
  47. package/.medusa/server/src/utils/plugins.js +20 -0
  48. package/.medusa/server/src/utils/types/index.js +19 -0
  49. package/.medusa/server/src/utils/validate-rules.js +85 -0
  50. package/.medusa/server/src/workflows/index.js +20 -0
  51. package/.medusa/server/src/workflows/inventory/get-inventory-level-by-id.js +23 -0
  52. package/.medusa/server/src/workflows/inventory/index.js +18 -0
  53. package/.medusa/server/src/workflows/inventory/steps/get-inventory-level-by-id.js +25 -0
  54. package/.medusa/server/src/workflows/inventory/steps/index.js +18 -0
  55. package/.medusa/server/src/workflows/mpn-automation/create-automation.js +14 -0
  56. package/.medusa/server/src/workflows/mpn-automation/edit-automation-actions.js +15 -0
  57. package/.medusa/server/src/workflows/mpn-automation/edit-automation-rules.js +15 -0
  58. package/.medusa/server/src/workflows/mpn-automation/edit-automation.js +14 -0
  59. package/.medusa/server/src/workflows/mpn-automation/index.js +24 -0
  60. package/.medusa/server/src/workflows/mpn-automation/run-automation.js +76 -0
  61. package/.medusa/server/src/workflows/mpn-automation/send-email-action.js +73 -0
  62. package/.medusa/server/src/workflows/mpn-automation/steps/create-automation.js +19 -0
  63. package/.medusa/server/src/workflows/mpn-automation/steps/edit-automation-actions.js +51 -0
  64. package/.medusa/server/src/workflows/mpn-automation/steps/edit-automation-rules.js +87 -0
  65. package/.medusa/server/src/workflows/mpn-automation/steps/edit-automation.js +20 -0
  66. package/.medusa/server/src/workflows/mpn-automation/steps/index.js +24 -0
  67. package/.medusa/server/src/workflows/mpn-automation/steps/retrieve-automation-triggers-by-event.js +62 -0
  68. package/.medusa/server/src/workflows/mpn-automation/steps/run-automation-actions.js +92 -0
  69. package/.medusa/server/src/workflows/mpn-automation/steps/validate-automation-triggers.js +29 -0
  70. package/.medusa/server/src/workflows/mpn-automation/validate-automation-triggers-by-event.js +38 -0
  71. package/.medusa/server/src/workflows/notifications/index.js +18 -0
  72. package/.medusa/server/src/workflows/notifications/send-email.js +51 -0
  73. package/.medusa/server/src/workflows/notifications/steps/index.js +18 -0
  74. package/.medusa/server/src/workflows/notifications/steps/send-email.js +119 -0
  75. package/.medusa/server/src/workflows/steps/log-step.js +16 -0
  76. package/LICENSE +21 -0
  77. package/README.md +104 -0
  78. package/package.json +72 -0
@@ -0,0 +1,15 @@
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.sdk = void 0;
7
+ const js_sdk_1 = __importDefault(require("@medusajs/js-sdk"));
8
+ exports.sdk = new js_sdk_1.default({
9
+ baseUrl: "/",
10
+ debug: false,
11
+ auth: {
12
+ type: "session",
13
+ },
14
+ });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FkbWluL2xpYi9zZGsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOERBQXFDO0FBRXhCLFFBQUEsR0FBRyxHQUFHLElBQUksZ0JBQU0sQ0FBQztJQUM1QixPQUFPLEVBQUUsR0FBRztJQUNaLEtBQUssRUFBRSxLQUFLO0lBQ1osSUFBSSxFQUFFO1FBQ0osSUFBSSxFQUFFLFNBQVM7S0FDaEI7Q0FDRixDQUFDLENBQUEifQ==
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PostAutomationActionsSchema = void 0;
4
+ exports.POST = POST;
5
+ exports.GET = GET;
6
+ const utils_1 = require("@medusajs/framework/utils");
7
+ const zod_1 = require("zod");
8
+ const mpn_automation_1 = require("../../../../../workflows/mpn-automation");
9
+ exports.PostAutomationActionsSchema = zod_1.z.object({
10
+ trigger_id: zod_1.z.string(),
11
+ actions: zod_1.z.array(zod_1.z.object({
12
+ id: zod_1.z.string().optional(),
13
+ action_type: zod_1.z.string().optional(),
14
+ config: zod_1.z.record(zod_1.z.any()).nullable().optional(),
15
+ })),
16
+ });
17
+ async function POST(req, res) {
18
+ if (req.body?.trigger_id) {
19
+ const { result } = await (0, mpn_automation_1.editAutomationActionsWorkflow)(req.scope).run({
20
+ input: {
21
+ triggerId: req.body.trigger_id,
22
+ actions: req.body.actions || [],
23
+ }
24
+ });
25
+ res.json({
26
+ actions: result.actions,
27
+ });
28
+ }
29
+ else {
30
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "trigger_id is required");
31
+ }
32
+ }
33
+ async function GET(req, res) {
34
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
35
+ const { id, trigger_id } = req.query;
36
+ const filters = {};
37
+ if (id) {
38
+ filters.id = {
39
+ $eq: id,
40
+ };
41
+ }
42
+ if (trigger_id) {
43
+ filters.trigger_id = {
44
+ $eq: trigger_id,
45
+ };
46
+ }
47
+ const { data: actions, metadata: { count, take, skip } = {} } = await query.graph({
48
+ entity: "mpn_automation_action",
49
+ filters: filters,
50
+ ...req.queryConfig
51
+ });
52
+ res.json({
53
+ actions: actions,
54
+ count: count || 0,
55
+ limit: take || 15,
56
+ offset: skip || 0,
57
+ });
58
+ }
59
+ // export const DeleteAutomationSchema = z.object({
60
+ // id: z.string(),
61
+ // });
62
+ // type DeleteAutomationSchema = z.infer<typeof DeleteAutomationSchema>;
63
+ // export async function DELETE(
64
+ // req: MedusaStoreRequest<DeleteAutomationSchema>,
65
+ // res: MedusaResponse
66
+ // ) {
67
+ // // const { result: automation } = await deleteAutomationWorkflow(
68
+ // // req.scope
69
+ // // ).run({
70
+ // // input: {
71
+ // // id: req.body.id as string
72
+ // // },
73
+ // // });
74
+ // // res.json({
75
+ // // automation: automation,
76
+ // // });
77
+ // }
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9hY3Rpb25zL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWdCQSxvQkF1QkM7QUFFRCxrQkFnQ0M7QUF4RUQscURBQWtGO0FBQ2xGLDZCQUF1QjtBQUN2Qiw0RUFBdUY7QUFFMUUsUUFBQSwyQkFBMkIsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2xELFVBQVUsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFO0lBQ3RCLE9BQU8sRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLE9BQUMsQ0FBQyxNQUFNLENBQUM7UUFDeEIsRUFBRSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDekIsV0FBVyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDbEMsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsT0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO0tBQ2hELENBQUMsQ0FBQztDQUNKLENBQUMsQ0FBQztBQUlJLEtBQUssVUFBVSxJQUFJLENBQ3hCLEdBQW9ELEVBQ3BELEdBQW1CO0lBRW5CLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUN6QixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxJQUFBLDhDQUE2QixFQUNwRCxHQUFHLENBQUMsS0FBSyxDQUNWLENBQUMsR0FBRyxDQUFDO1lBQ0osS0FBSyxFQUFFO2dCQUNMLFNBQVMsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVU7Z0JBQzlCLE9BQU8sRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFO2FBQ2hDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNQLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztTQUN4QixDQUFDLENBQUM7SUFDTCxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLHdCQUF3QixDQUN6QixDQUFDO0lBQ0osQ0FBQztBQUNILENBQUM7QUFFTSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUF1QixFQUN2QixHQUFtQjtJQUVuQixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNoRSxNQUFNLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUE7SUFDcEMsTUFBTSxPQUFPLEdBQVEsRUFBRSxDQUFBO0lBRXZCLElBQUksRUFBRSxFQUFFLENBQUM7UUFDUCxPQUFPLENBQUMsRUFBRSxHQUFHO1lBQ1gsR0FBRyxFQUFFLEVBQUU7U0FDUixDQUFBO0lBQ0gsQ0FBQztJQUVELElBQUksVUFBVSxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsVUFBVSxHQUFHO1lBQ25CLEdBQUcsRUFBRSxVQUFVO1NBQ2hCLENBQUE7SUFDSCxDQUFDO0lBRUQsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDaEYsTUFBTSxFQUFFLHVCQUF1QjtRQUMvQixPQUFPLEVBQUUsT0FBTztRQUNoQixHQUFHLEdBQUcsQ0FBQyxXQUFXO0tBQ25CLENBQUMsQ0FBQTtJQUVGLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFDUCxPQUFPLEVBQUUsT0FBTztRQUNoQixLQUFLLEVBQUUsS0FBSyxJQUFJLENBQUM7UUFDakIsS0FBSyxFQUFFLElBQUksSUFBSSxFQUFFO1FBQ2pCLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQztLQUNsQixDQUFDLENBQUE7QUFDSixDQUFDO0FBR0QsbURBQW1EO0FBQ25ELG9CQUFvQjtBQUNwQixNQUFNO0FBRU4sd0VBQXdFO0FBRXhFLGdDQUFnQztBQUNoQyxxREFBcUQ7QUFDckQsd0JBQXdCO0FBQ3hCLE1BQU07QUFDTixzRUFBc0U7QUFDdEUsbUJBQW1CO0FBQ25CLGVBQWU7QUFDZixrQkFBa0I7QUFDbEIscUNBQXFDO0FBQ3JDLFlBQVk7QUFDWixXQUFXO0FBRVgsa0JBQWtCO0FBQ2xCLGlDQUFpQztBQUNqQyxXQUFXO0FBQ1gsSUFBSSJ9
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = GET;
4
+ const mpn_automation_1 = require("../../../../../modules/mpn-automation");
5
+ async function GET(req, res) {
6
+ const automationService = req.scope.resolve(mpn_automation_1.MPN_AUTOMATION_MODULE);
7
+ const actions = automationService.getAvailableActions();
8
+ res.json({
9
+ actions: actions,
10
+ });
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9hdmFpbGFibGUtYWN0aW9ucy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUlBLGtCQVdDO0FBZEQsMEVBQTZFO0FBR3RFLEtBQUssVUFBVSxHQUFHLENBQ3ZCLEdBQXVCLEVBQ3ZCLEdBQW1CO0lBRW5CLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsc0NBQXFCLENBQXlCLENBQUE7SUFFMUYsTUFBTSxPQUFPLEdBQUcsaUJBQWlCLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUV2RCxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ1AsT0FBTyxFQUFFLE9BQU87S0FDakIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = GET;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const mpn_automation_1 = require("../../../../../modules/mpn-automation");
6
+ async function GET(req, res) {
7
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
8
+ const automationService = req.scope.resolve(mpn_automation_1.MPN_AUTOMATION_MODULE);
9
+ const events = automationService.getAvailableEvents();
10
+ res.json({
11
+ events: events,
12
+ });
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9hdmFpbGFibGUtZXZlbnRzL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBS0Esa0JBWUM7QUFoQkQscURBQWtGO0FBQ2xGLDBFQUE2RTtBQUd0RSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUF1QixFQUN2QixHQUFtQjtJQUVuQixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNoRSxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLHNDQUFxQixDQUF5QixDQUFBO0lBRTFGLE1BQU0sTUFBTSxHQUFHLGlCQUFpQixDQUFDLGtCQUFrQixFQUFFLENBQUE7SUFFckQsR0FBRyxDQUFDLElBQUksQ0FBQztRQUNQLE1BQU0sRUFBRSxNQUFNO0tBQ2YsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = GET;
4
+ const mpn_automation_1 = require("../../../../../modules/mpn-automation");
5
+ async function GET(req, res) {
6
+ const automationService = req.scope.resolve(mpn_automation_1.MPN_AUTOMATION_MODULE);
7
+ const triggers = automationService.getAvailableTriggers();
8
+ res.json({
9
+ triggers: triggers,
10
+ });
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9hdmFpbGFibGUtdHJpZ2dlcnMvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxrQkFXQztBQWRELDBFQUE2RTtBQUd0RSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUF1QixFQUN2QixHQUFtQjtJQUVuQixNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLHNDQUFxQixDQUF5QixDQUFBO0lBRTFGLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLG9CQUFvQixFQUFFLENBQUE7SUFFekQsR0FBRyxDQUFDLElBQUksQ0FBQztRQUNQLFFBQVEsRUFBRSxRQUFRO0tBQ25CLENBQUMsQ0FBQTtBQUNKLENBQUMifQ==
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteAutomationSchema = exports.PostAutomationSchema = void 0;
4
+ exports.POST = POST;
5
+ exports.GET = GET;
6
+ exports.DELETE = DELETE;
7
+ const utils_1 = require("@medusajs/framework/utils");
8
+ const zod_1 = require("zod");
9
+ const mpn_automation_1 = require("../../../../workflows/mpn-automation");
10
+ exports.PostAutomationSchema = zod_1.z.object({
11
+ id: zod_1.z.string().optional(),
12
+ items: zod_1.z.array(zod_1.z.object({
13
+ id: zod_1.z.string().optional(),
14
+ name: zod_1.z.string(),
15
+ })),
16
+ });
17
+ async function POST(req, res) {
18
+ if (req.body?.id) {
19
+ const { result: automation } = await (0, mpn_automation_1.editAutomationWorkflow)(req.scope).run({
20
+ input: req.body
21
+ });
22
+ res.json({
23
+ automation: automation,
24
+ });
25
+ }
26
+ else {
27
+ const { result: automation } = await (0, mpn_automation_1.createAutomationWorkflow)(req.scope).run({
28
+ input: req.body
29
+ });
30
+ res.json({
31
+ automation: automation,
32
+ });
33
+ }
34
+ }
35
+ async function GET(req, res) {
36
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
37
+ const { id } = req.query;
38
+ const filters = {};
39
+ if (id) {
40
+ filters.id = {
41
+ $eq: id,
42
+ };
43
+ }
44
+ const { data: triggers, metadata: { count, take, skip } = {} } = await query.graph({
45
+ entity: "mpn_automation_trigger",
46
+ filters: filters,
47
+ ...req.queryConfig
48
+ });
49
+ res.json({
50
+ triggers: triggers,
51
+ count: count || 0,
52
+ limit: take || 15,
53
+ offset: skip || 0,
54
+ });
55
+ }
56
+ exports.DeleteAutomationSchema = zod_1.z.object({
57
+ id: zod_1.z.string(),
58
+ });
59
+ async function DELETE(req, res) {
60
+ // const { result: automation } = await deleteAutomationWorkflow(
61
+ // req.scope
62
+ // ).run({
63
+ // input: {
64
+ // id: req.body.id as string
65
+ // },
66
+ // });
67
+ // res.json({
68
+ // automation: automation,
69
+ // });
70
+ }
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFlQSxvQkF5QkM7QUFFRCxrQkEwQkM7QUFTRCx3QkFlQztBQTNGRCxxREFBa0Y7QUFDbEYsNkJBQXVCO0FBQ3ZCLHlFQUFtSztBQUV0SixRQUFBLG9CQUFvQixHQUFHLE9BQUMsQ0FBQyxNQUFNLENBQUM7SUFDM0MsRUFBRSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDekIsS0FBSyxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sQ0FBQztRQUN0QixFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtRQUN6QixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtLQUNqQixDQUFDLENBQUM7Q0FDSixDQUFDLENBQUM7QUFJSSxLQUFLLFVBQVUsSUFBSSxDQUN4QixHQUE2QyxFQUM3QyxHQUFtQjtJQUVuQixJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFDakIsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLElBQUEsdUNBQXNCLEVBQ3pELEdBQUcsQ0FBQyxLQUFLLENBQ1YsQ0FBQyxHQUFHLENBQUM7WUFDSixLQUFLLEVBQUUsR0FBRyxDQUFDLElBQW1DO1NBQy9DLENBQUMsQ0FBQztRQUVILEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDUCxVQUFVLEVBQUUsVUFBVTtTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsTUFBTSxJQUFBLHlDQUF3QixFQUMzRCxHQUFHLENBQUMsS0FBSyxDQUNWLENBQUMsR0FBRyxDQUFDO1lBQ0osS0FBSyxFQUFFLEdBQUcsQ0FBQyxJQUFxQztTQUNqRCxDQUFDLENBQUM7UUFFSCxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ1AsVUFBVSxFQUFFLFVBQVU7U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUM7QUFFTSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUF1QixFQUN2QixHQUFtQjtJQUVuQixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNoRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQTtJQUN4QixNQUFNLE9BQU8sR0FBUSxFQUFFLENBQUE7SUFFdkIsSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUNQLE9BQU8sQ0FBQyxFQUFFLEdBQUc7WUFDWCxHQUFHLEVBQUUsRUFBRTtTQUNSLENBQUE7SUFDSCxDQUFDO0lBRUQsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDakYsTUFBTSxFQUFFLHdCQUF3QjtRQUNoQyxPQUFPLEVBQUUsT0FBTztRQUNoQixHQUFHLEdBQUcsQ0FBQyxXQUFXO0tBQ25CLENBQUMsQ0FBQTtJQUVGLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFDUCxRQUFRLEVBQUUsUUFBUTtRQUNsQixLQUFLLEVBQUUsS0FBSyxJQUFJLENBQUM7UUFDakIsS0FBSyxFQUFFLElBQUksSUFBSSxFQUFFO1FBQ2pCLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQztLQUNsQixDQUFDLENBQUE7QUFDSixDQUFDO0FBR1ksUUFBQSxzQkFBc0IsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQzdDLEVBQUUsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFO0NBQ2YsQ0FBQyxDQUFDO0FBSUksS0FBSyxVQUFVLE1BQU0sQ0FDMUIsR0FBK0MsRUFDL0MsR0FBbUI7SUFFbkIsaUVBQWlFO0lBQ2pFLGNBQWM7SUFDZCxVQUFVO0lBQ1YsYUFBYTtJQUNiLGdDQUFnQztJQUNoQyxPQUFPO0lBQ1AsTUFBTTtJQUVOLGFBQWE7SUFDYiw0QkFBNEI7SUFDNUIsTUFBTTtBQUNSLENBQUMifQ==
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PostAutomationRulesSchema = void 0;
4
+ exports.POST = POST;
5
+ exports.GET = GET;
6
+ const utils_1 = require("@medusajs/framework/utils");
7
+ const zod_1 = require("zod");
8
+ const mpn_automation_1 = require("../../../../../workflows/mpn-automation");
9
+ exports.PostAutomationRulesSchema = zod_1.z.object({
10
+ trigger_id: zod_1.z.string(),
11
+ rules: zod_1.z.array(zod_1.z.object({
12
+ id: zod_1.z.string().optional(),
13
+ attribute: zod_1.z.string().optional(),
14
+ operator: zod_1.z.string().optional(),
15
+ description: zod_1.z.string().nullable().optional(),
16
+ metadata: zod_1.z.record(zod_1.z.any()).nullable().optional(),
17
+ rule_values: zod_1.z.array(zod_1.z.object({
18
+ id: zod_1.z.string().optional(),
19
+ value: zod_1.z.string().nullable().optional(),
20
+ metadata: zod_1.z.record(zod_1.z.any()).nullable().optional(),
21
+ })).optional(),
22
+ })),
23
+ });
24
+ async function POST(req, res) {
25
+ if (req.body?.trigger_id) {
26
+ const { result } = await (0, mpn_automation_1.editAutomationRulesWorkflow)(req.scope).run({
27
+ input: {
28
+ triggerId: req.body.trigger_id,
29
+ rules: req.body.rules || [],
30
+ }
31
+ });
32
+ res.json({
33
+ rules: result.rules,
34
+ });
35
+ }
36
+ else {
37
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "trigger_id is required");
38
+ }
39
+ }
40
+ async function GET(req, res) {
41
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
42
+ const { id, trigger_id } = req.query;
43
+ const filters = {};
44
+ if (id) {
45
+ filters.id = {
46
+ $eq: id,
47
+ };
48
+ }
49
+ if (trigger_id) {
50
+ filters.trigger_id = {
51
+ $eq: trigger_id,
52
+ };
53
+ }
54
+ const { data: rules, metadata: { count, take, skip } = {} } = await query.graph({
55
+ entity: "mpn_automation_rule",
56
+ filters: filters,
57
+ ...req.queryConfig
58
+ });
59
+ res.json({
60
+ rules: rules,
61
+ count: count || 0,
62
+ limit: take || 15,
63
+ offset: skip || 0,
64
+ });
65
+ }
66
+ // export const DeleteAutomationSchema = z.object({
67
+ // id: z.string(),
68
+ // });
69
+ // type DeleteAutomationSchema = z.infer<typeof DeleteAutomationSchema>;
70
+ // export async function DELETE(
71
+ // req: MedusaStoreRequest<DeleteAutomationSchema>,
72
+ // res: MedusaResponse
73
+ // ) {
74
+ // // const { result: automation } = await deleteAutomationWorkflow(
75
+ // // req.scope
76
+ // // ).run({
77
+ // // input: {
78
+ // // id: req.body.id as string
79
+ // // },
80
+ // // });
81
+ // // res.json({
82
+ // // automation: automation,
83
+ // // });
84
+ // }
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9ydWxlcy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF3QkEsb0JBdUJDO0FBRUQsa0JBZ0NDO0FBaEZELHFEQUFrRjtBQUNsRiw2QkFBdUI7QUFDdkIsNEVBQXFGO0FBR3hFLFFBQUEseUJBQXlCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNoRCxVQUFVLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUN0QixLQUFLLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxDQUFDO1FBQ3RCLEVBQUUsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQ3pCLFNBQVMsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQ2hDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQy9CLFdBQVcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQzdDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxDQUFDLE9BQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRTtRQUNqRCxXQUFXLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxDQUFDO1lBQzVCLEVBQUUsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1lBQ3pCLEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO1lBQ3ZDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxDQUFDLE9BQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxD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
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdminAutomationsActionsListParams = exports.AdminAutomationsRulesListParams = exports.AdminAutomationsListParams = void 0;
4
+ const http_1 = require("@medusajs/framework/http");
5
+ const validators_1 = require("@medusajs/medusa/api/utils/validators");
6
+ const zod_1 = require("zod");
7
+ exports.AdminAutomationsListParams = (0, validators_1.createFindParams)().extend({
8
+ id: zod_1.z.string().optional(),
9
+ });
10
+ exports.AdminAutomationsRulesListParams = (0, validators_1.createFindParams)().extend({
11
+ id: zod_1.z.string().optional(),
12
+ trigger_id: zod_1.z.string().optional(),
13
+ });
14
+ exports.AdminAutomationsActionsListParams = (0, validators_1.createFindParams)().extend({
15
+ id: zod_1.z.string().optional(),
16
+ trigger_id: zod_1.z.string().optional(),
17
+ });
18
+ exports.default = (0, http_1.defineMiddlewares)({
19
+ routes: [
20
+ {
21
+ matcher: "/admin/mpn/automations/available-events",
22
+ methods: ["GET"],
23
+ middlewares: [
24
+ (0, http_1.authenticate)("user", ["session", "bearer"], {
25
+ allowUnauthenticated: false,
26
+ }),
27
+ ],
28
+ },
29
+ {
30
+ matcher: "/admin/mpn/automations/available-actions",
31
+ methods: ["GET"],
32
+ middlewares: [
33
+ (0, http_1.authenticate)("user", ["session", "bearer"], {
34
+ allowUnauthenticated: false,
35
+ }),
36
+ ],
37
+ },
38
+ {
39
+ matcher: "/admin/mpn/automations/available-triggers",
40
+ methods: ["GET"],
41
+ middlewares: [
42
+ (0, http_1.authenticate)("user", ["session", "bearer"], {
43
+ allowUnauthenticated: false,
44
+ }),
45
+ ],
46
+ },
47
+ {
48
+ matcher: "/admin/mpn/automations/rules",
49
+ methods: ["GET"],
50
+ middlewares: [
51
+ (0, http_1.authenticate)("user", ["session", "bearer"], {
52
+ allowUnauthenticated: false,
53
+ }),
54
+ (0, http_1.validateAndTransformQuery)(exports.AdminAutomationsRulesListParams, {
55
+ defaults: [
56
+ "id",
57
+ "trigger_id",
58
+ "attribute",
59
+ "operator",
60
+ "description",
61
+ "position",
62
+ "metadata",
63
+ "created_at",
64
+ "updated_at",
65
+ "rule_values.*"
66
+ ],
67
+ isList: true,
68
+ }),
69
+ ],
70
+ },
71
+ {
72
+ matcher: "/admin/mpn/automations/actions",
73
+ methods: ["GET"],
74
+ middlewares: [
75
+ (0, http_1.authenticate)("user", ["session", "bearer"], {
76
+ allowUnauthenticated: false,
77
+ }),
78
+ (0, http_1.validateAndTransformQuery)(exports.AdminAutomationsActionsListParams, {
79
+ defaults: [
80
+ "id",
81
+ "trigger_id",
82
+ "action_type",
83
+ "config",
84
+ "position",
85
+ "metadata",
86
+ "active",
87
+ "created_at",
88
+ "updated_at",
89
+ ],
90
+ isList: true,
91
+ }),
92
+ ],
93
+ },
94
+ {
95
+ matcher: "/admin/mpn/automations",
96
+ methods: ["GET"],
97
+ middlewares: [
98
+ (0, http_1.authenticate)("user", ["session", "bearer"], {
99
+ allowUnauthenticated: false,
100
+ }),
101
+ (0, http_1.validateAndTransformQuery)(exports.AdminAutomationsListParams, {
102
+ defaults: [
103
+ "id",
104
+ "name",
105
+ "description",
106
+ "trigger_id",
107
+ "trigger_type",
108
+ "event_name",
109
+ "interval_minutes",
110
+ "last_run_at",
111
+ "channels",
112
+ "metadata",
113
+ "active",
114
+ "created_at",
115
+ "updated_at",
116
+ "rules.*",
117
+ "rules.rule_values.*"
118
+ ],
119
+ isList: true,
120
+ }),
121
+ ],
122
+ },
123
+ ],
124
+ });
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBpL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUk4SjtBQUM5SixzRUFBd0U7QUFDeEUsNkJBQXVCO0FBRVYsUUFBQSwwQkFBMEIsR0FBRyxJQUFBLDZCQUFnQixHQUFFLENBQUMsTUFBTSxDQUFDO0lBQ2xFLEVBQUUsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0NBQzFCLENBQUMsQ0FBQTtBQUVXLFFBQUEsK0JBQStCLEdBQUcsSUFBQSw2QkFBZ0IsR0FBRSxDQUFDLE1BQU0sQ0FBQztJQUN2RSxFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUN6QixVQUFVLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUNsQyxDQUFDLENBQUE7QUFFVyxRQUFBLGlDQUFpQyxHQUFHLElBQUEsNkJBQWdCLEdBQUUsQ0FBQyxNQUFNLENBQUM7SUFDekUsRUFBRSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDekIsVUFBVSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDbEMsQ0FBQyxDQUFBO0FBRUYsa0JBQWUsSUFBQSx3QkFBaUIsRUFBQztJQUMvQixNQUFNLEVBQUU7UUFDTjtZQUNFLE9BQU8sRUFBRSx5Q0FBeUM7WUFDbEQsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ2hCLFdBQVcsRUFBRTtnQkFDWCxJQUFBLG1CQUFZLEVBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxFQUFFO29CQUMxQyxvQkFBb0IsRUFBRSxLQUFLO2lCQUM1QixDQUFDO2FBQ0g7U0FDRjtRQUNEO1lBQ0UsT0FBTyxFQUFFLDBDQUEwQztZQUNuRCxPQUFPLEVBQUUs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
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ // import React from "react";
3
+ // import {
4
+ // Text,
5
+ // Container,
6
+ // Heading,
7
+ // Html,
8
+ // Section,
9
+ // Tailwind,
10
+ // Head,
11
+ // Preview,
12
+ // Body,
13
+ // Button,
14
+ // } from "@react-email/components";
15
+ // import type { TemplateData, TemplateOptionsType } from "@codee-sh/medusa-plugin-notification-emails/templates/emails";
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ // type EmailProps = {
18
+ // data: TemplateData;
19
+ // options: TemplateOptionsType;
20
+ // };
21
+ // function Template({ data, options }: EmailProps) {
22
+ // return (
23
+ // <Tailwind>
24
+ // <Html className="font-sans bg-gray-100">
25
+ // <Head />
26
+ // <Preview>{`You've been invited to join ${data?.inventory_level?.location_id ?? ""}`}</Preview>
27
+ // <Body className="bg-white my-10 mx-auto w-full max-w-2xl">
28
+ // {/* Main Content */}
29
+ // <Container className="p-6 text-center">
30
+ // <Heading className="text-lg font-semibold text-black mb-6">
31
+ // You've been invited to join {data?.inventory_level?.location_id ?? ""}
32
+ // </Heading>
33
+ // <Text className="text-sm text-black leading-relaxed mb-6">
34
+ // Click the button below to accept the invitation and get started.
35
+ // </Text>
36
+ // <Section className="text-center my-8">
37
+ // <Button
38
+ // href={data.inviteUrl}
39
+ // className="bg-black text-white py-3 px-8 inline-block"
40
+ // >
41
+ // Accept invitation
42
+ // </Button>
43
+ // </Section>
44
+ // </Container>
45
+ // {/* Footer */}
46
+ // <Section className="bg-gray-50 p-6 mt-10">
47
+ // <Text className="text-center text-black text-xs mt-4">
48
+ // © {new Date().getFullYear()}, Inc. All rights
49
+ // reserved.
50
+ // </Text>
51
+ // </Section>
52
+ // </Body>
53
+ // </Html>
54
+ // </Tailwind>
55
+ // );
56
+ // }
57
+ // export default function getInviteTemplate(
58
+ // data: TemplateData,
59
+ // options: TemplateOptionsType
60
+ // ): React.ReactElement<any> {
61
+ // return (
62
+ // <Template
63
+ // data={data}
64
+ // options={options}
65
+ // />
66
+ // );
67
+ // }
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhhbXBsZS10ZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbWFpbHMvZXhhbXBsZS10ZW1wbGF0ZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZCQUE2QjtBQUM3QixXQUFXO0FBQ1gsVUFBVTtBQUNWLGVBQWU7QUFDZixhQUFhO0FBQ2IsVUFBVTtBQUNWLGFBQWE7QUFDYixjQUFjO0FBQ2QsVUFBVTtBQUNWLGFBQWE7QUFDYixVQUFVO0FBQ1YsWUFBWTtBQUNaLG9DQUFvQztBQUNwQyx5SEFBeUg7O0FBRXpILHNCQUFzQjtBQUN0Qix3QkFBd0I7QUFDeEIsa0NBQWtDO0FBQ2xDLEtBQUs7QUFFTCxxREFBcUQ7QUFDckQsYUFBYTtBQUNiLGlCQUFpQjtBQUNqQixpREFBaUQ7QUFDakQsbUJBQW1CO0FBQ25CLHlHQUF5RztBQUN6RyxxRUFBcUU7QUFDckUsaUNBQWlDO0FBQ2pDLG9EQUFvRDtBQUNwRCwwRUFBMEU7QUFDMUUsdUZBQXVGO0FBQ3ZGLHlCQUF5QjtBQUV6Qix5RUFBeUU7QUFDekUsaUZBQWlGO0FBQ2pGLHNCQUFzQjtBQUV0QixxREFBcUQ7QUFDckQsd0JBQXdCO0FBQ3hCLHdDQUF3QztBQUN4Qyx5RUFBeUU7QUFDekUsa0JBQWtCO0FBQ2xCLG9DQUFvQztBQUNwQywwQkFBMEI7QUFDMUIseUJBQXlCO0FBQ3pCLHlCQUF5QjtBQUV6QiwyQkFBMkI7QUFDM0IsdURBQXVEO0FBQ3ZELHFFQUFxRTtBQUNyRSw4REFBOEQ7QUFDOUQsMEJBQTBCO0FBQzFCLHNCQUFzQjtBQUN0Qix1QkFBdUI7QUFDdkIsa0JBQWtCO0FBQ2xCLGdCQUFnQjtBQUNoQixrQkFBa0I7QUFDbEIsT0FBTztBQUNQLElBQUk7QUFFSiw2Q0FBNkM7QUFDN0Msd0JBQXdCO0FBQ3hCLGlDQUFpQztBQUNqQywrQkFBK0I7QUFDL0IsYUFBYTtBQUNiLGdCQUFnQjtBQUNoQixvQkFBb0I7QUFDcEIsMEJBQTBCO0FBQzFCLFNBQVM7QUFDVCxPQUFPO0FBQ1AsSUFBSSJ9
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useListAutomations = exports.useDeleteAutomation = exports.useEditAutomation = exports.useCreateAutomation = void 0;
4
+ const react_query_1 = require("@tanstack/react-query");
5
+ const sdk_1 = require("../../../admin/lib/sdk");
6
+ const useCreateAutomation = (options) => {
7
+ return (0, react_query_1.useMutation)({
8
+ mutationFn: async (data) => {
9
+ await sdk_1.sdk.client.fetch("/admin/mpn/automations", {
10
+ method: "POST",
11
+ body: data,
12
+ });
13
+ },
14
+ });
15
+ };
16
+ exports.useCreateAutomation = useCreateAutomation;
17
+ const useEditAutomation = (options) => {
18
+ return (0, react_query_1.useMutation)({
19
+ mutationFn: async (data) => {
20
+ await sdk_1.sdk.client.fetch("/admin/mpn/automations", {
21
+ method: "POST",
22
+ body: data,
23
+ });
24
+ },
25
+ });
26
+ };
27
+ exports.useEditAutomation = useEditAutomation;
28
+ const useDeleteAutomation = (options) => {
29
+ return (0, react_query_1.useMutation)({
30
+ mutationFn: async ({ id }) => {
31
+ await sdk_1.sdk.client.fetch("/admin/mpn/automations", {
32
+ method: "DELETE",
33
+ body: {
34
+ id: id,
35
+ },
36
+ });
37
+ },
38
+ ...options,
39
+ });
40
+ };
41
+ exports.useDeleteAutomation = useDeleteAutomation;
42
+ const useListAutomations = (params, options) => {
43
+ const { limit = 100, offset = 0, extraKey = [], enabled, fields, order = "created_at", id } = params;
44
+ const queryKey = [
45
+ "automations",
46
+ id,
47
+ limit,
48
+ offset,
49
+ ...extraKey
50
+ ];
51
+ const query = {
52
+ limit,
53
+ offset,
54
+ fields,
55
+ order,
56
+ };
57
+ if (id) {
58
+ query.id = id;
59
+ }
60
+ const { data, ...rest } = (0, react_query_1.useQuery)({
61
+ queryKey,
62
+ queryFn: async () => {
63
+ return await sdk_1.sdk.client.fetch("/admin/mpn/automations", {
64
+ method: "GET",
65
+ query,
66
+ });
67
+ },
68
+ enabled,
69
+ ...options,
70
+ });
71
+ return { data, ...rest };
72
+ };
73
+ exports.useListAutomations = useListAutomations;
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b21hdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvaG9va3MvYXBpL2F1dG9tYXRpb25zL2F1dG9tYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHVEQUs4QjtBQUM5QixnREFBNEM7QUFHckMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLE9BQWEsRUFBRSxFQUFFO0lBQ25ELE9BQU8sSUFBQSx5QkFBVyxFQUF3QztRQUN4RCxVQUFVLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFO1lBQ3pCLE1BQU0sU0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUU7Z0JBQy9DLE1BQU0sRUFBRSxNQUFNO2dCQUNkLElBQUksRUFBRSxJQUFJO2FBQ1gsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVRXLFFBQUEsbUJBQW1CLHVCQVM5QjtBQUVLLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxPQUFhLEVBQUUsRUFBRTtJQUNqRCxPQUFPLElBQUEseUJBQVcsRUFBd0M7UUFDeEQsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUN6QixNQUFNLFNBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHdCQUF3QixFQUFFO2dCQUMvQyxNQUFNLEVBQUUsTUFBTTtnQkFDZCxJQUFJLEVBQUUsSUFBSTthQUNYLENBQUMsQ0FBQztRQUNMLENBQUM7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFUVyxRQUFBLGlCQUFpQixxQkFTNUI7QUFNSyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLE9BQXFFLEVBQ3JFLEVBQUU7SUFDRixPQUFPLElBQUEseUJBQVcsRUFBMEM7UUFDMUQsVUFBVSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDM0IsTUFBTSxTQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsRUFBRTtnQkFDL0MsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLElBQUksRUFBRTtvQkFDSixFQUFFLEVBQUUsRUFBRTtpQkFDUDthQUNGLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxHQUFJLE9BQWU7S0FDcEIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBZFcsUUFBQSxtQkFBbUIsdUJBYzlCO0FBb0JLLE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsTUFBVyxFQUNYLE9BQWEsRUFDYixFQUFFO0lBQ0YsTUFBTSxFQUFFLEtBQUssR0FBRyxHQUFHLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxRQUFRLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxHQUFHLFlBQVksRUFBRSxFQUFFLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFckcsTUFBTSxRQUFRLEdBQWE7UUFDekIsYUFBYTtRQUNiLEVBQUU7UUFDRixLQUFLO1FBQ0wsTUFBTTtRQUNOLEdBQUcsUUFBUTtLQUNaLENBQUM7SUFFRixNQUFNLEtBQUssR0FBUTtRQUNqQixLQUFLO1FBQ0wsTUFBTTtRQUNOLE1BQU07UUFDTixLQUFLO0tBQ04sQ0FBQztJQUVGLElBQUksRUFBRSxFQUFFLENBQUM7UUFDUCxLQUFLLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUEsc0JBQVEsRUFLaEM7UUFDQSxRQUFRO1FBQ1IsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2xCLE9BQU8sTUFBTSxTQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsRUFBRTtnQkFDdEQsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsS0FBSzthQUNOLENBQUMsQ0FBQTtRQUNKLENBQUM7UUFDRCxPQUFPO1FBQ1AsR0FBSSxPQUFlO0tBQ3BCLENBQUMsQ0FBQztJQUVILE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLEVBQUUsQ0FBQztBQUMzQixDQUFDLENBQUM7QUEzQ1csUUFBQSxrQkFBa0Isc0JBMkM3QiJ9
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./automations"), exports);
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvaG9va3MvYXBpL2F1dG9tYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxnREFBNkIifQ==
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useListAutomationsActions = exports.useEditAutomationAction = void 0;
4
+ const react_query_1 = require("@tanstack/react-query");
5
+ const sdk_1 = require("../../../admin/lib/sdk");
6
+ const useEditAutomationAction = () => {
7
+ return (0, react_query_1.useMutation)({
8
+ mutationFn: async (data) => {
9
+ await sdk_1.sdk.client.fetch("/admin/mpn/automations/actions", {
10
+ method: "POST",
11
+ body: data,
12
+ });
13
+ },
14
+ });
15
+ };
16
+ exports.useEditAutomationAction = useEditAutomationAction;
17
+ const useListAutomationsActions = (params, options) => {
18
+ const { limit = 100, offset = 0, extraKey = [], enabled, fields, order = "created_at", id, trigger_id } = params;
19
+ const queryKey = [
20
+ "automations-actions",
21
+ limit,
22
+ offset,
23
+ ...extraKey
24
+ ];
25
+ const query = {
26
+ limit,
27
+ offset,
28
+ fields,
29
+ order,
30
+ };
31
+ if (id) {
32
+ query.id = id;
33
+ }
34
+ if (trigger_id) {
35
+ query.trigger_id = trigger_id;
36
+ }
37
+ const { data, ...rest } = (0, react_query_1.useQuery)({
38
+ queryKey,
39
+ queryFn: async () => {
40
+ return await sdk_1.sdk.client.fetch("/admin/mpn/automations/actions", {
41
+ method: "GET",
42
+ query,
43
+ });
44
+ },
45
+ enabled,
46
+ ...options,
47
+ });
48
+ return { data, ...rest };
49
+ };
50
+ exports.useListAutomationsActions = useListAutomationsActions;
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b21hdGlvbnMtYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9ob29rcy9hcGkvYXV0b21hdGlvbnMtYWN0aW9ucy9hdXRvbWF0aW9ucy1hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHVEQUk4QjtBQUM5QixnREFBNEM7QUFFckMsTUFBTSx1QkFBdUIsR0FBRyxHQUFHLEVBQUU7SUFDMUMsT0FBTyxJQUFBLHlCQUFXLEVBQXdDO1FBQ3hELFVBQVUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDekIsTUFBTSxTQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsRUFBRTtnQkFDdkQsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsSUFBSSxFQUFFLElBQUk7YUFDWCxDQUFDLENBQUM7UUFDTCxDQUFDO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBVFcsUUFBQSx1QkFBdUIsMkJBU2xDO0FBb0JLLE1BQU0seUJBQXlCLEdBQUcsQ0FDdkMsTUFBVyxFQUNYLE9BQWEsRUFDYixFQUFFO0lBQ0YsTUFBTSxFQUFFLEtBQUssR0FBRyxHQUFHLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxRQUFRLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxHQUFHLFlBQVksRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBRWpILE1BQU0sUUFBUSxHQUFhO1FBQ3pCLHFCQUFxQjtRQUNyQixLQUFLO1FBQ0wsTUFBTTtRQUNOLEdBQUcsUUFBUTtLQUNaLENBQUM7SUFFRixNQUFNLEtBQUssR0FBUTtRQUNqQixLQUFLO1FBQ0wsTUFBTTtRQUNOLE1BQU07UUFDTixLQUFLO0tBQ04sQ0FBQztJQUVGLElBQUksRUFBRSxFQUFFLENBQUM7UUFDUCxLQUFLLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNmLEtBQUssQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBQSxzQkFBUSxFQUtoQztRQUNBLFFBQVE7UUFDUixPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDbEIsT0FBTyxNQUFNLFNBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxFQUFFO2dCQUM5RCxNQUFNLEVBQUUsS0FBSztnQkFDYixLQUFLO2FBQ04sQ0FBQyxDQUFBO1FBQ0osQ0FBQztRQUNELE9BQU87UUFDUCxHQUFJLE9BQWU7S0FDcEIsQ0FBQyxDQUFDO0lBRUgsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDO0FBQzNCLENBQUMsQ0FBQztBQTlDVyxRQUFBLHlCQUF5Qiw2QkE4Q3BDIn0=