@codee-sh/medusa-plugin-automations 1.0.6 → 1.0.8

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 (91) hide show
  1. package/.medusa/server/src/admin/_chunks/{__admin-extensions__-BD2AvjDH → __admin-extensions__-BNGTajTJ} +8057 -384
  2. package/.medusa/server/src/admin/_chunks/{__admin-extensions__-BxUQA9oD → __admin-extensions__-DBUaxMhv} +8097 -408
  3. package/.medusa/server/src/admin/_chunks/base-config-CGvQmkNR +414 -0
  4. package/.medusa/server/src/admin/_chunks/base-config-ClmYhVFu +414 -0
  5. package/.medusa/server/src/admin/index.js +1 -1
  6. package/.medusa/server/src/admin/index.mjs +1 -1
  7. package/.medusa/server/src/api/admin/mpn/automations/available-actions/route.js +1 -1
  8. package/.medusa/server/src/api/admin/mpn/automations/rules/route.js +11 -2
  9. package/.medusa/server/src/api/middlewares.js +1 -1
  10. package/.medusa/server/src/modules/mpn-automation/migrations/Migration20251217190839.js +14 -0
  11. package/.medusa/server/src/modules/mpn-automation/migrations/Migration20251222121805.js +14 -0
  12. package/.medusa/server/src/modules/mpn-automation/models/mpn_automation_rule_value.js +3 -2
  13. package/.medusa/server/src/modules/mpn-automation/models/mpn_automation_trigger.js +2 -2
  14. package/.medusa/server/src/modules/mpn-automation/services/base-action-service.js +1 -1
  15. package/.medusa/server/src/modules/mpn-automation/services/email-action-service.js +2 -2
  16. package/.medusa/server/src/modules/mpn-automation/services/service.js +20 -9
  17. package/.medusa/server/src/modules/mpn-automation/services/slack-action-service.js +12 -2
  18. package/.medusa/server/src/modules/mpn-automation/types/modules/index.js +182 -5
  19. package/.medusa/server/src/modules/mpn-automation/types/modules/inventory/inventory.js +54 -2
  20. package/.medusa/server/src/modules/mpn-automation/types/modules/order/helpers.js +28 -0
  21. package/.medusa/server/src/modules/mpn-automation/types/modules/order/index.js +18 -0
  22. package/.medusa/server/src/modules/mpn-automation/types/modules/order/order.js +560 -0
  23. package/.medusa/server/src/modules/mpn-automation/types/modules/product/helpers.js +9 -0
  24. package/.medusa/server/src/modules/mpn-automation/types/modules/product/product.js +228 -2
  25. package/.medusa/server/src/modules/mpn-automation/types/modules/product-category/index.js +18 -0
  26. package/.medusa/server/src/modules/mpn-automation/types/modules/product-category/product-category.js +75 -0
  27. package/.medusa/server/src/modules/mpn-automation/types/modules/product-tag/index.js +18 -0
  28. package/.medusa/server/src/modules/mpn-automation/types/modules/product-tag/product-tag.js +39 -0
  29. package/.medusa/server/src/modules/mpn-automation/types/modules/product-type/index.js +18 -0
  30. package/.medusa/server/src/modules/mpn-automation/types/modules/product-type/product-type.js +39 -0
  31. package/.medusa/server/src/modules/mpn-automation/types/modules/product-variant/product-variant.js +111 -2
  32. package/.medusa/server/src/modules/mpn-automation/types/types.js +32 -2
  33. package/.medusa/server/src/providers/slack/service.js +1 -1
  34. package/.medusa/server/src/subscribers/inventory-level-updated.js +2 -2
  35. package/.medusa/server/src/subscribers/inventory-reservation-item-updated.js +1 -1
  36. package/.medusa/server/src/subscribers/mpn.automation.action.email.executed.js +3 -3
  37. package/.medusa/server/src/subscribers/mpn.automation.action.slack.executed.js +4 -4
  38. package/.medusa/server/src/subscribers/order-placed.js +1 -1
  39. package/.medusa/server/src/subscribers/order-updated.js +36 -0
  40. package/.medusa/server/src/subscribers/product-updated.js +2 -1
  41. package/.medusa/server/src/templates/slack/inventory-level/inventory-level.js +1 -1
  42. package/.medusa/server/src/templates/slack/inventory-level/translations/index.js +1 -1
  43. package/.medusa/server/src/templates/slack/order/base-order.js +57 -0
  44. package/.medusa/server/src/templates/slack/order/index.js +23 -0
  45. package/.medusa/server/src/templates/slack/order/order-archived.js +13 -0
  46. package/.medusa/server/src/templates/slack/order/order-canceled.js +13 -0
  47. package/.medusa/server/src/templates/slack/order/order-completed.js +13 -0
  48. package/.medusa/server/src/templates/slack/order/order-placed.js +13 -0
  49. package/.medusa/server/src/templates/slack/order/order-updated.js +13 -0
  50. package/.medusa/server/src/templates/slack/order/order.js +52 -0
  51. package/.medusa/server/src/templates/slack/order/translations/en.json +38 -0
  52. package/.medusa/server/src/templates/slack/order/translations/index.js +15 -0
  53. package/.medusa/server/src/templates/slack/order/translations/pl.json +38 -0
  54. package/.medusa/server/src/templates/slack/product/product.js +2 -3
  55. package/.medusa/server/src/templates/slack/product/translations/index.js +1 -1
  56. package/.medusa/server/src/templates/slack/product-variant/product-variant.js +2 -3
  57. package/.medusa/server/src/templates/slack/product-variant/translations/index.js +1 -1
  58. package/.medusa/server/src/utils/attribute-helpers.js +17 -0
  59. package/.medusa/server/src/utils/i18n/i18n.js +13 -8
  60. package/.medusa/server/src/utils/index.js +2 -1
  61. package/.medusa/server/src/utils/validate-rules.js +40 -3
  62. package/.medusa/server/src/workflows/index.js +2 -1
  63. package/.medusa/server/src/workflows/inventory/steps/get-inventory-level-by-id.js +6 -14
  64. package/.medusa/server/src/workflows/mpn-automation/index.js +2 -2
  65. package/.medusa/server/src/workflows/mpn-automation/run-automation.js +53 -10
  66. package/.medusa/server/src/workflows/mpn-automation/run-email-action.js +6 -2
  67. package/.medusa/server/src/workflows/mpn-automation/run-slack-action.js +6 -2
  68. package/.medusa/server/src/workflows/mpn-automation/steps/create-automation.js +1 -1
  69. package/.medusa/server/src/workflows/mpn-automation/steps/edit-automation-actions.js +3 -2
  70. package/.medusa/server/src/workflows/mpn-automation/steps/edit-automation-rules.js +1 -1
  71. package/.medusa/server/src/workflows/mpn-automation/steps/edit-automation.js +1 -1
  72. package/.medusa/server/src/workflows/mpn-automation/steps/index.js +3 -2
  73. package/.medusa/server/src/workflows/mpn-automation/steps/retrieve-automation-triggers-by-event.js +2 -2
  74. package/.medusa/server/src/workflows/mpn-automation/steps/run-automation-actions.js +1 -1
  75. package/.medusa/server/src/workflows/mpn-automation/steps/validate-trigger-throttle.js +78 -0
  76. package/.medusa/server/src/workflows/mpn-automation/steps/validate-triggers-rules.js +31 -0
  77. package/.medusa/server/src/workflows/mpn-automation/validate-triggers-by-event.js +38 -0
  78. package/.medusa/server/src/workflows/notifications/steps/send-email.js +2 -2
  79. package/.medusa/server/src/workflows/notifications/steps/send-slack.js +1 -1
  80. package/.medusa/server/src/workflows/order/get-order-by-id.js +23 -0
  81. package/.medusa/server/src/workflows/order/index.js +18 -0
  82. package/.medusa/server/src/workflows/order/steps/get-order-by-id.js +40 -0
  83. package/.medusa/server/src/workflows/order/steps/index.js +18 -0
  84. package/.medusa/server/src/workflows/product/steps/get-product-by-id.js +6 -46
  85. package/.medusa/server/src/workflows/product-variant/steps/get-product-variant-by-id.js +2 -10
  86. package/README.md +18 -15
  87. package/package.json +12 -3
  88. package/.medusa/server/src/admin/_chunks/base-config-ON0ZG0Je +0 -7890
  89. package/.medusa/server/src/admin/_chunks/base-config-XI6iR6Jp +0 -7907
  90. package/.medusa/server/src/workflows/mpn-automation/steps/validate-automation-triggers.js +0 -31
  91. package/.medusa/server/src/workflows/mpn-automation/validate-automation-triggers-by-event.js +0 -38
@@ -0,0 +1,414 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { C as Controller, a as ChipInput } from "./__admin-extensions__-BNGTajTJ";
3
+ import { Input, Textarea, Select, Checkbox, Label } from "@medusajs/ui";
4
+ const TextField = ({
5
+ label,
6
+ value,
7
+ onChange,
8
+ placeholder = "",
9
+ required = false,
10
+ disabled = false
11
+ }) => {
12
+ return /* @__PURE__ */ jsx(
13
+ Input,
14
+ {
15
+ type: "text",
16
+ value,
17
+ onChange: (e) => onChange(e.target.value),
18
+ placeholder,
19
+ disabled
20
+ }
21
+ );
22
+ };
23
+ const TextAreaField = ({
24
+ label,
25
+ value,
26
+ onChange,
27
+ placeholder = "",
28
+ required = false,
29
+ disabled = false,
30
+ rows = 3
31
+ }) => {
32
+ return /* @__PURE__ */ jsx(
33
+ Textarea,
34
+ {
35
+ value,
36
+ onChange: (e) => onChange(e.target.value),
37
+ placeholder,
38
+ disabled,
39
+ rows
40
+ }
41
+ );
42
+ };
43
+ const NumberField = ({
44
+ label,
45
+ value,
46
+ onChange,
47
+ placeholder = "",
48
+ required = false,
49
+ disabled = false,
50
+ min,
51
+ max,
52
+ step = null
53
+ }) => {
54
+ return /* @__PURE__ */ jsx(
55
+ Input,
56
+ {
57
+ type: "number",
58
+ value,
59
+ onChange: (e) => onChange(Number(e.target.value)),
60
+ placeholder,
61
+ disabled,
62
+ min: min || void 0,
63
+ max: max || void 0,
64
+ step: step || void 0
65
+ }
66
+ );
67
+ };
68
+ const SelectField = ({
69
+ label,
70
+ value,
71
+ onChange,
72
+ options,
73
+ required = false,
74
+ disabled = false
75
+ }) => {
76
+ return /* @__PURE__ */ jsxs(
77
+ Select,
78
+ {
79
+ value,
80
+ onValueChange: onChange,
81
+ disabled,
82
+ children: [
83
+ /* @__PURE__ */ jsx(Select.Trigger, { children: /* @__PURE__ */ jsx(Select.Value, { placeholder: "Select an option" }) }),
84
+ /* @__PURE__ */ jsx(Select.Content, { children: options.map((option) => /* @__PURE__ */ jsx(
85
+ Select.Item,
86
+ {
87
+ value: option.value,
88
+ children: option.name
89
+ },
90
+ option.value
91
+ )) })
92
+ ]
93
+ }
94
+ );
95
+ };
96
+ const CheckboxField = ({
97
+ label,
98
+ checked,
99
+ onChange,
100
+ required = false,
101
+ disabled = false
102
+ }) => {
103
+ return /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2", children: [
104
+ /* @__PURE__ */ jsx(
105
+ Checkbox,
106
+ {
107
+ checked,
108
+ onCheckedChange: onChange,
109
+ disabled,
110
+ id: `checkbox-${label}`
111
+ }
112
+ ),
113
+ /* @__PURE__ */ jsxs(
114
+ Label,
115
+ {
116
+ htmlFor: `checkbox-${label}`,
117
+ className: "text-sm font-medium cursor-pointer",
118
+ children: [
119
+ label,
120
+ required && /* @__PURE__ */ jsx("span", { className: "text-red-500 ml-1", children: "*" })
121
+ ]
122
+ }
123
+ )
124
+ ] });
125
+ };
126
+ const FormField = ({
127
+ label,
128
+ required,
129
+ children
130
+ }) => {
131
+ return /* @__PURE__ */ jsxs("div", { children: [
132
+ /* @__PURE__ */ jsx("div", { className: "mb-2", children: /* @__PURE__ */ jsxs(Label, { className: "text-sm font-medium", children: [
133
+ label,
134
+ required && /* @__PURE__ */ jsx("span", { className: "text-red-500 ml-1", children: "*" })
135
+ ] }) }),
136
+ children
137
+ ] });
138
+ };
139
+ const ManagerFields = ({
140
+ fields,
141
+ name,
142
+ form,
143
+ errors
144
+ }) => {
145
+ const renderField = (groupField) => {
146
+ switch (groupField.type) {
147
+ case "text":
148
+ return /* @__PURE__ */ jsx(
149
+ Controller,
150
+ {
151
+ name: `${name}.${groupField.name}`,
152
+ control: form.control,
153
+ defaultValue: groupField.defaultValue || "",
154
+ shouldUnregister: false,
155
+ render: ({ field, fieldState }) => {
156
+ return /* @__PURE__ */ jsxs(
157
+ FormField,
158
+ {
159
+ label: groupField.label,
160
+ required: groupField.required,
161
+ children: [
162
+ /* @__PURE__ */ jsx(
163
+ TextField,
164
+ {
165
+ label: groupField.label,
166
+ value: field.value || "",
167
+ onChange: (value) => field.onChange(value),
168
+ placeholder: groupField.placeholder,
169
+ required: groupField.required
170
+ }
171
+ ),
172
+ fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: fieldState.error.message }),
173
+ (errors == null ? void 0 : errors[groupField.name]) && !fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: errors[groupField.name] })
174
+ ]
175
+ }
176
+ );
177
+ }
178
+ },
179
+ groupField.name || groupField.key
180
+ );
181
+ case "email":
182
+ return /* @__PURE__ */ jsx(
183
+ Controller,
184
+ {
185
+ name: `${name}.${groupField.name}`,
186
+ control: form.control,
187
+ defaultValue: groupField.defaultValue || "",
188
+ shouldUnregister: false,
189
+ render: ({ field, fieldState }) => {
190
+ return /* @__PURE__ */ jsxs(
191
+ FormField,
192
+ {
193
+ label: groupField.label,
194
+ required: groupField.required,
195
+ children: [
196
+ /* @__PURE__ */ jsx(
197
+ TextField,
198
+ {
199
+ label: groupField.label,
200
+ value: field.value || "",
201
+ onChange: (value) => field.onChange(value),
202
+ placeholder: groupField.placeholder,
203
+ required: groupField.required
204
+ }
205
+ ),
206
+ fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: fieldState.error.message }),
207
+ (errors == null ? void 0 : errors[groupField.name]) && !fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: errors[groupField.name] })
208
+ ]
209
+ }
210
+ );
211
+ }
212
+ },
213
+ groupField.name || groupField.key
214
+ );
215
+ case "textarea":
216
+ return /* @__PURE__ */ jsx(
217
+ Controller,
218
+ {
219
+ name: `${name}.${groupField.name}`,
220
+ control: form.control,
221
+ defaultValue: "",
222
+ shouldUnregister: false,
223
+ render: ({ field, fieldState }) => {
224
+ return /* @__PURE__ */ jsxs(
225
+ FormField,
226
+ {
227
+ label: groupField.label,
228
+ required: groupField.required,
229
+ children: [
230
+ /* @__PURE__ */ jsx(
231
+ TextAreaField,
232
+ {
233
+ label: groupField.label,
234
+ value: field.value || "",
235
+ onChange: (value) => field.onChange(value),
236
+ placeholder: groupField.placeholder,
237
+ required: groupField.required
238
+ }
239
+ ),
240
+ fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: fieldState.error.message }),
241
+ (errors == null ? void 0 : errors[groupField.name]) && !fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: errors[groupField.name] })
242
+ ]
243
+ }
244
+ );
245
+ }
246
+ },
247
+ groupField.name || groupField.key
248
+ );
249
+ case "number":
250
+ return /* @__PURE__ */ jsx(
251
+ Controller,
252
+ {
253
+ name: `${name}.${groupField.name}`,
254
+ control: form.control,
255
+ defaultValue: groupField.defaultValue || 0,
256
+ shouldUnregister: false,
257
+ render: ({ field, fieldState }) => {
258
+ return /* @__PURE__ */ jsxs(
259
+ FormField,
260
+ {
261
+ label: groupField.label,
262
+ required: groupField.required,
263
+ children: [
264
+ /* @__PURE__ */ jsx(
265
+ NumberField,
266
+ {
267
+ label: groupField.label,
268
+ value: field.value || 0,
269
+ onChange: (value) => field.onChange(value),
270
+ placeholder: groupField.placeholder,
271
+ required: groupField.required,
272
+ min: groupField.min || null,
273
+ max: groupField.max || null,
274
+ step: groupField.step || null
275
+ }
276
+ ),
277
+ fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: fieldState.error.message }),
278
+ (errors == null ? void 0 : errors[groupField.name]) && !fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: errors[groupField.name] })
279
+ ]
280
+ }
281
+ );
282
+ }
283
+ },
284
+ groupField.name || groupField.key
285
+ );
286
+ case "select":
287
+ return /* @__PURE__ */ jsx(
288
+ Controller,
289
+ {
290
+ name: `${name}.${groupField.name}`,
291
+ control: form.control,
292
+ defaultValue: groupField.defaultValue || "",
293
+ shouldUnregister: false,
294
+ render: ({ field, fieldState }) => {
295
+ return /* @__PURE__ */ jsxs(
296
+ FormField,
297
+ {
298
+ label: groupField.label,
299
+ required: groupField.required,
300
+ children: [
301
+ /* @__PURE__ */ jsx(
302
+ SelectField,
303
+ {
304
+ label: groupField.label,
305
+ value: field.value || "",
306
+ onChange: (value) => field.onChange(value),
307
+ options: groupField.options || [],
308
+ required: groupField.required
309
+ }
310
+ ),
311
+ fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: fieldState.error.message }),
312
+ (errors == null ? void 0 : errors[groupField.name]) && !fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: errors[groupField.name] })
313
+ ]
314
+ }
315
+ );
316
+ }
317
+ },
318
+ groupField.name || groupField.key
319
+ );
320
+ case "chip-input":
321
+ return /* @__PURE__ */ jsx(
322
+ Controller,
323
+ {
324
+ name: `${name}.${groupField.name}`,
325
+ control: form.control,
326
+ defaultValue: groupField.defaultValue || false,
327
+ shouldUnregister: false,
328
+ render: ({ field, fieldState }) => {
329
+ return /* @__PURE__ */ jsxs(
330
+ FormField,
331
+ {
332
+ label: groupField.label,
333
+ required: groupField.required,
334
+ children: [
335
+ /* @__PURE__ */ jsx(
336
+ ChipInput,
337
+ {
338
+ name: groupField.name,
339
+ value: field.value || [],
340
+ onChange: (value) => field.onChange(value),
341
+ placeholder: groupField.placeholder,
342
+ allowDuplicates: false,
343
+ showRemove: true,
344
+ variant: "base"
345
+ }
346
+ ),
347
+ fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: fieldState.error.message }),
348
+ (errors == null ? void 0 : errors[groupField.name]) && !fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: errors[groupField.name] })
349
+ ]
350
+ }
351
+ );
352
+ }
353
+ },
354
+ groupField.name || groupField.key
355
+ );
356
+ case "checkbox":
357
+ return /* @__PURE__ */ jsx(
358
+ Controller,
359
+ {
360
+ name: `${name}.${groupField.name}`,
361
+ control: form.control,
362
+ defaultValue: groupField.defaultValue || false,
363
+ shouldUnregister: false,
364
+ render: ({ field, fieldState }) => {
365
+ return /* @__PURE__ */ jsxs(
366
+ FormField,
367
+ {
368
+ label: groupField.label,
369
+ required: groupField.required,
370
+ children: [
371
+ /* @__PURE__ */ jsx(
372
+ CheckboxField,
373
+ {
374
+ label: groupField.label,
375
+ checked: field.value || false,
376
+ onChange: (checked) => field.onChange(checked),
377
+ required: groupField.required
378
+ }
379
+ ),
380
+ fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: fieldState.error.message }),
381
+ (errors == null ? void 0 : errors[groupField.name]) && !fieldState.error && /* @__PURE__ */ jsx("span", { className: "text-red-500 text-sm", children: errors[groupField.name] })
382
+ ]
383
+ }
384
+ );
385
+ }
386
+ },
387
+ groupField.name || groupField.key
388
+ );
389
+ default:
390
+ return null;
391
+ }
392
+ };
393
+ return /* @__PURE__ */ jsx("div", { className: "space-y-2", children: fields.map((field) => /* @__PURE__ */ jsx("div", { children: renderField(field) }, field.key)) });
394
+ };
395
+ function BaseConfigComponent({
396
+ form,
397
+ fields,
398
+ name,
399
+ errors
400
+ }) {
401
+ return /* @__PURE__ */ jsx(
402
+ ManagerFields,
403
+ {
404
+ name,
405
+ form,
406
+ fields,
407
+ errors
408
+ }
409
+ );
410
+ }
411
+ export {
412
+ BaseConfigComponent,
413
+ BaseConfigComponent as default
414
+ };
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
- const __adminExtensions__ = require("./_chunks/__admin-extensions__-BxUQA9oD");
2
+ const __adminExtensions__ = require("./_chunks/__admin-extensions__-DBUaxMhv");
3
3
  module.exports = __adminExtensions__.plugin;
@@ -1,4 +1,4 @@
1
- import { p } from "./_chunks/__admin-extensions__-BD2AvjDH";
1
+ import { p } from "./_chunks/__admin-extensions__-BNGTajTJ";
2
2
  export {
3
3
  p as default
4
4
  };
@@ -11,4 +11,4 @@ async function GET(req, res) {
11
11
  actions: actions,
12
12
  });
13
13
  }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9hdmFpbGFibGUtYWN0aW9ucy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU9BLGtCQWdCQztBQW5CRCwwRUFBNkU7QUFHdEUsS0FBSyxVQUFVLEdBQUcsQ0FDdkIsR0FBdUIsRUFDdkIsR0FBbUI7SUFFbkIsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FDekMsc0NBQXFCLENBQ0UsQ0FBQTtJQUV6Qiw4Q0FBOEM7SUFDOUMsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUErQixDQUFBO0lBRTNELE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRWhFLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFDUCxPQUFPLEVBQUUsT0FBTztLQUNqQixDQUFDLENBQUE7QUFDSixDQUFDIn0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9hdmFpbGFibGUtYWN0aW9ucy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU9BLGtCQW1CQztBQXRCRCwwRUFBNkU7QUFHdEUsS0FBSyxVQUFVLEdBQUcsQ0FDdkIsR0FBdUIsRUFDdkIsR0FBbUI7SUFFbkIsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FDekMsc0NBQXFCLENBQ0UsQ0FBQTtJQUV6Qiw4Q0FBOEM7SUFDOUMsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUVmLENBQUE7SUFFYixNQUFNLE9BQU8sR0FDWCxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUVsRCxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ1AsT0FBTyxFQUFFLE9BQU87S0FDakIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
@@ -17,7 +17,16 @@ exports.PostAutomationRulesSchema = zod_1.z.object({
17
17
  rule_values: zod_1.z
18
18
  .array(zod_1.z.object({
19
19
  id: zod_1.z.string().optional(),
20
- value: zod_1.z.string().nullable().optional(),
20
+ // Value can be string, number, or array (for array operators like contains, in, etc.)
21
+ value: zod_1.z
22
+ .union([
23
+ zod_1.z.string(),
24
+ zod_1.z.number(),
25
+ zod_1.z.array(zod_1.z.string()),
26
+ zod_1.z.array(zod_1.z.number()),
27
+ ])
28
+ .nullable()
29
+ .optional(),
21
30
  metadata: zod_1.z
22
31
  .record(zod_1.z.any())
23
32
  .nullable()
@@ -87,4 +96,4 @@ async function GET(req, res) {
87
96
  // // automation: automation,
88
97
  // // });
89
98
  // }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9ydWxlcy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF5Q0Esb0JBdUJDO0FBRUQsa0JBcUNDO0FBbkdELHFEQUdrQztBQUNsQyw2QkFBdUI7QUFDdkIsNEVBQXFGO0FBR3hFLFFBQUEseUJBQXlCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNoRCxVQUFVLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUN0QixLQUFLLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FDWixPQUFDLENBQUMsTUFBTSxDQUFDO1FBQ1AsRUFBRSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDekIsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDaEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDL0IsV0FBVyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDN0MsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsT0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQ2pELFdBQVcsRUFBRSxPQUFDO2FBQ1gsS0FBSyxDQUNKLE9BQUMsQ0FBQyxNQUFNLENBQUM7WUFDUCxFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtZQUN6QixLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRTtZQUN2QyxRQUFRLEVBQUUsT0FBQztpQkFDUixNQUFNLENBQUMsT0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO2lC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
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21wbi9hdXRvbWF0aW9ucy9ydWxlcy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFrREEsb0JBdUJDO0FBRUQsa0JBcUNDO0FBNUdELHFEQUdrQztBQUNsQyw2QkFBdUI7QUFDdkIsNEVBQXFGO0FBR3hFLFFBQUEseUJBQXlCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNoRCxVQUFVLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUN0QixLQUFLLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FDWixPQUFDLENBQUMsTUFBTSxDQUFDO1FBQ1AsRUFBRSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDekIsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDaEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDL0IsV0FBVyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDN0MsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsT0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQ2pELFdBQVcsRUFBRSxPQUFDO2FBQ1gsS0FBSyxDQUNKLE9BQUMsQ0FBQyxNQUFNLENBQUM7WUFDUCxFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtZQUN6QixzRkFBc0Y7WUFDdEYsS0FBSyxFQUFFLE9BQUM7aUJBQ0wsS0FBSyxDQUFDO2dCQUNMLE9BQUMsQ0FBQyxNQUFNLEVBQUU7Z0JBQ1YsT0FBQyxDQUFDLE1BQU0sRUFBRTtnQkFDVixPQUFDLENBQUMsS0FBSyxDQUFDLE9B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
@@ -106,7 +106,7 @@ exports.default = (0, http_1.defineMiddlewares)({
106
106
  "trigger_id",
107
107
  "trigger_type",
108
108
  "event_name",
109
- "interval_minutes",
109
+ "interval_seconds",
110
110
  "channels",
111
111
  "metadata",
112
112
  "active",
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Migration20251217190839 = void 0;
4
+ const migrations_1 = require("@mikro-orm/migrations");
5
+ class Migration20251217190839 extends migrations_1.Migration {
6
+ async up() {
7
+ this.addSql(`alter table if exists "mpn_automation_rule_value" alter column "value" type jsonb using ("value"::jsonb);`);
8
+ }
9
+ async down() {
10
+ this.addSql(`alter table if exists "mpn_automation_rule_value" alter column "value" type text using ("value"::text);`);
11
+ }
12
+ }
13
+ exports.Migration20251217190839 = Migration20251217190839;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTEyMTcxOTA4MzkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9tcG4tYXV0b21hdGlvbi9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjUxMjE3MTkwODM5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFpRDtBQUVqRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBQzNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FDVCwyR0FBMkcsQ0FDNUcsQ0FBQTtJQUNILENBQUM7SUFFUSxLQUFLLENBQUMsSUFBSTtRQUNqQixJQUFJLENBQUMsTUFBTSxDQUNULHlHQUF5RyxDQUMxRyxDQUFBO0lBQ0gsQ0FBQztDQUNGO0FBWkQsMERBWUMifQ==
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Migration20251222121805 = void 0;
4
+ const migrations_1 = require("@mikro-orm/migrations");
5
+ class Migration20251222121805 extends migrations_1.Migration {
6
+ async up() {
7
+ this.addSql(`alter table if exists "mpn_automation_trigger" rename column "interval_minutes" to "interval_seconds";`);
8
+ }
9
+ async down() {
10
+ this.addSql(`alter table if exists "mpn_automation_trigger" rename column "interval_seconds" to "interval_minutes";`);
11
+ }
12
+ }
13
+ exports.Migration20251222121805 = Migration20251222121805;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTEyMjIxMjE4MDUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9tcG4tYXV0b21hdGlvbi9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjUxMjIyMTIxODA1LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFpRDtBQUVqRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBQzNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FDVCx3R0FBd0csQ0FDekcsQ0FBQTtJQUNILENBQUM7SUFFUSxLQUFLLENBQUMsSUFBSTtRQUNqQixJQUFJLENBQUMsTUFBTSxDQUNULHdHQUF3RyxDQUN6RyxDQUFBO0lBQ0gsQ0FBQztDQUNGO0FBWkQsMERBWUMifQ==
@@ -5,10 +5,11 @@ const utils_1 = require("@medusajs/framework/utils");
5
5
  const mpn_automation_rule_1 = require("./mpn_automation_rule");
6
6
  exports.MpnAutomationRuleValue = utils_1.model.define("mpn_automation_rule_value", {
7
7
  id: utils_1.model.id().primaryKey(),
8
- value: utils_1.model.text().nullable(),
8
+ // Value can be string, number, or array (for array operators like contains)
9
+ value: utils_1.model.json().nullable(),
9
10
  metadata: utils_1.model.json().nullable(),
10
11
  rule: utils_1.model.belongsTo(() => mpn_automation_rule_1.MpnAutomationRule, {
11
12
  mappedBy: "rule_values",
12
13
  }),
13
14
  });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXBuX2F1dG9tYXRpb25fcnVsZV92YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL21wbi1hdXRvbWF0aW9uL21vZGVscy9tcG5fYXV0b21hdGlvbl9ydWxlX3ZhbHVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUFpRDtBQUNqRCwrREFBeUQ7QUFFNUMsUUFBQSxzQkFBc0IsR0FBRyxhQUFLLENBQUMsTUFBTSxDQUNoRCwyQkFBMkIsRUFDM0I7SUFDRSxFQUFFLEVBQUUsYUFBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsRUFBRTtJQUUzQixLQUFLLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUU5QixRQUFRLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUVqQyxJQUFJLEVBQUUsYUFBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1Q0FBaUIsRUFBRTtRQUM3QyxRQUFRLEVBQUUsYUFBYTtLQUN4QixDQUFDO0NBQ0gsQ0FDRixDQUFBIn0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXBuX2F1dG9tYXRpb25fcnVsZV92YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL21wbi1hdXRvbWF0aW9uL21vZGVscy9tcG5fYXV0b21hdGlvbl9ydWxlX3ZhbHVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUFpRDtBQUNqRCwrREFBeUQ7QUFFNUMsUUFBQSxzQkFBc0IsR0FBRyxhQUFLLENBQUMsTUFBTSxDQUNoRCwyQkFBMkIsRUFDM0I7SUFDRSxFQUFFLEVBQUUsYUFBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsRUFBRTtJQUUzQiw0RUFBNEU7SUFDNUUsS0FBSyxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFFOUIsUUFBUSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFFakMsSUFBSSxFQUFFLGFBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsdUNBQWlCLEVBQUU7UUFDN0MsUUFBUSxFQUFFLGFBQWE7S0FDeEIsQ0FBQztDQUNILENBQ0YsQ0FBQSJ9
@@ -20,8 +20,8 @@ exports.MpnAutomationTrigger = utils_1.model
20
20
  ]),
21
21
  // Event name — only when trigger_type = "event"
22
22
  event_name: utils_1.model.text().nullable(),
23
- // Interval in minutes — only when trigger_type = "schedule"
24
- interval_minutes: utils_1.model.number().nullable(),
23
+ // Interval in seconds — only when trigger_type = "schedule"
24
+ interval_seconds: utils_1.model.number().nullable(),
25
25
  // Whether the trigger is enabled
26
26
  active: utils_1.model.boolean().default(true),
27
27
  // Delivery channels — JSON
@@ -95,4 +95,4 @@ class BaseActionService {
95
95
  }
96
96
  }
97
97
  exports.BaseActionService = BaseActionService;
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1hY3Rpb24tc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL21wbi1hdXRvbWF0aW9uL3NlcnZpY2VzL2Jhc2UtYWN0aW9uLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEscURBQW1EO0FBRW5EOzs7Ozs7OztHQVFHO0FBQ0gsTUFBYSxpQkFBaUI7SUFBOUI7UUFDRSxPQUFFLEdBQUcsTUFBTSxDQUFBO1FBQ1gsVUFBSyxHQUFHLE1BQU0sQ0FBQTtRQUNkLGdCQUFXLEdBQUcsRUFBRSxDQUFBO1FBRWhCLHVCQUFrQixHQUFHLHFCQUFxQixDQUFBO1FBRTFDLGtHQUFrRztRQUNsRyxXQUFNLEdBQWtCLEVBQUUsQ0FBQTtRQUUxQiw2REFBNkQ7UUFDbkQsZUFBVSxHQUFrQyxJQUFJLEdBQUcsRUFBRSxDQUFBO0lBa0dqRSxDQUFDO0lBaEdDOzs7O09BSUc7SUFDSCxnQkFBZ0IsQ0FBQyxJQUFZLEVBQUUsUUFBMEI7UUFDdkQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQ3JDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsV0FBVyxDQUFDLElBQVk7UUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sbUJBQW1CO1FBQzNCLHVEQUF1RDtJQUN6RCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNPLG9CQUFvQixDQUM1QixVQUFrRCxFQUFFLEVBQ3BELFlBQXFCO1FBRXJCLE9BQU87WUFDTCxJQUFJLEVBQUUsY0FBYztZQUNwQixHQUFHLEVBQUUsY0FBYztZQUNuQixLQUFLLEVBQUUsZUFBZTtZQUN0QixJQUFJLEVBQUUsUUFBaUI7WUFDdkIsUUFBUSxFQUFFLElBQUk7WUFDZCxPQUFPLEVBQUUsT0FBTztZQUNoQixZQUFZLEVBQUUsWUFBWTtTQUMzQixDQUFBO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSCxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQ2xCLE9BQU8sRUFDUCxNQUFNLEVBQ04sT0FBTyxFQUNQLFNBQVMsRUFDVCxTQUFTLEVBQ1QsV0FBVyxHQVFaO1FBQ0MsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FDdkMsZUFBTyxDQUFDLFNBQVMsQ0FDbEIsQ0FBQTtRQUVELE1BQU0sZUFBZSxDQUFDLElBQUksQ0FBQztZQUN6QixJQUFJLEVBQUUsU0FBUztZQUNmLElBQUksRUFBRTtnQkFDSixTQUFTLEVBQUUsU0FBUztnQkFDcEIsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUFFO2dCQUNuQixPQUFPLEVBQUUsT0FBTztnQkFDaEIsV0FBVyxFQUFFLFdBQVc7YUFDekI7U0FDRixDQUFDLENBQUE7UUFFRixPQUFPO1lBQ0wsUUFBUSxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQ25CLFVBQVUsRUFBRSxNQUFNLENBQUMsV0FBVztZQUM5QixPQUFPLEVBQUUsSUFBSTtTQUNkLENBQUE7SUFDSCxDQUFDO0NBQ0Y7QUE3R0QsOENBNkdDIn0=
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1hY3Rpb24tc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL21wbi1hdXRvbWF0aW9uL3NlcnZpY2VzL2Jhc2UtYWN0aW9uLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEscURBQW1EO0FBRW5EOzs7Ozs7OztHQVFHO0FBQ0gsTUFBYSxpQkFBaUI7SUFBOUI7UUFDRSxPQUFFLEdBQUcsTUFBTSxDQUFBO1FBQ1gsVUFBSyxHQUFHLE1BQU0sQ0FBQTtRQUNkLGdCQUFXLEdBQUcsRUFBRSxDQUFBO1FBRWhCLHVCQUFrQixHQUFHLHFCQUFxQixDQUFBO1FBRTFDLGtHQUFrRztRQUNsRyxXQUFNLEdBQWtCLEVBQUUsQ0FBQTtRQUUxQiw2REFBNkQ7UUFDbkQsZUFBVSxHQUNsQixJQUFJLEdBQUcsRUFBRSxDQUFBO0lBcUdiLENBQUM7SUFuR0M7Ozs7T0FJRztJQUNILGdCQUFnQixDQUNkLElBQVksRUFDWixRQUEwQjtRQUUxQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsSUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFFRDs7O09BR0c7SUFDTyxtQkFBbUI7UUFDM0IsdURBQXVEO0lBQ3pELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ08sb0JBQW9CLENBQzVCLFVBQWtELEVBQUUsRUFDcEQsWUFBcUI7UUFFckIsT0FBTztZQUNMLElBQUksRUFBRSxjQUFjO1lBQ3BCLEdBQUcsRUFBRSxjQUFjO1lBQ25CLEtBQUssRUFBRSxlQUFlO1lBQ3RCLElBQUksRUFBRSxRQUFpQjtZQUN2QixRQUFRLEVBQUUsSUFBSTtZQUNkLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLFlBQVksRUFBRSxZQUFZO1NBQzNCLENBQUE7SUFDSCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNILEtBQUssQ0FBQyxhQUFhLENBQUMsRUFDbEIsT0FBTyxFQUNQLE1BQU0sRUFDTixPQUFPLEVBQ1AsU0FBUyxFQUNULFNBQVMsRUFDVCxXQUFXLEdBUVo7UUFDQyxNQUFNLGVBQWUsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUN2QyxlQUFPLENBQUMsU0FBUyxDQUNsQixDQUFBO1FBRUQsTUFBTSxlQUFlLENBQUMsSUFBSSxDQUFDO1lBQ3pCLElBQUksRUFBRSxTQUFTO1lBQ2YsSUFBSSxFQUFFO2dCQUNKLFNBQVMsRUFBRSxTQUFTO2dCQUNwQixNQUFNLEVBQUUsTUFBTTtnQkFDZCxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQ25CLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixXQUFXLEVBQUUsV0FBVzthQUN6QjtTQUNGLENBQUMsQ0FBQTtRQUVGLE9BQU87WUFDTCxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDbkIsVUFBVSxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQzlCLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQTtJQUNILENBQUM7Q0FDRjtBQWpIRCw4Q0FpSEMifQ==
@@ -71,11 +71,11 @@ class EmailActionService extends base_action_service_1.BaseActionService {
71
71
  * @returns Rendered email template with html, text, and subject
72
72
  */
73
73
  async renderTemplate(params) {
74
- const { templateName, context, options, customTemplateFunction } = params;
74
+ const { templateName, context, options, customTemplateFunction, } = params;
75
75
  // Use external plugin's renderTemplate function
76
76
  const result = await (0, emails_1.renderTemplate)(templateName, context, options || {}, customTemplateFunction);
77
77
  return result;
78
78
  }
79
79
  }
80
80
  exports.EmailActionService = EmailActionService;
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtYWN0aW9uLXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9tcG4tYXV0b21hdGlvbi9zZXJ2aWNlcy9lbWFpbC1hY3Rpb24tc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwrREFBeUQ7QUFDekQseUZBQTZGO0FBTzdGLE1BQWEsa0JBQW1CLFNBQVEsdUNBQWlCO0lBSXZEO1FBQ0UsS0FBSyxFQUFFLENBQUE7UUFKVCxPQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ1osVUFBSyxHQUFHLE9BQU8sQ0FBQTtRQU9mLFdBQU0sR0FBa0I7WUFDdEI7Z0JBQ0UsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsR0FBRyxFQUFFLElBQUk7Z0JBQ1QsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsSUFBSSxFQUFFLE9BQWdCO2dCQUN0QixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBRSxNQUFlO2dCQUNyQixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLE1BQU07Z0JBQ1osR0FBRyxFQUFFLE1BQU07Z0JBQ1gsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsSUFBSSxFQUFFLFVBQW1CO2dCQUN6QixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsR0FBRyxFQUFFLEtBQUs7Z0JBQ1YsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osSUFBSSxFQUFFLE9BQWdCO2dCQUN0QixRQUFRLEVBQUUsS0FBSzthQUNoQjtZQUNEO2dCQUNFLElBQUksRUFBRSxJQUFJO2dCQUNWLEdBQUcsRUFBRSxJQUFJO2dCQUNULEtBQUssRUFBRSxJQUFJO2dCQUNYLElBQUksRUFBRSxPQUFnQjtnQkFDdEIsUUFBUSxFQUFFLEtBQUs7YUFDaEI7WUFDRDtnQkFDRSxJQUFJLEVBQUUsU0FBUztnQkFDZixHQUFHLEVBQUUsU0FBUztnQkFDZCxLQUFLLEVBQUUsVUFBVTtnQkFDakIsSUFBSSxFQUFFLE9BQWdCO2dCQUN0QixRQUFRLEVBQUUsS0FBSzthQUNoQjtZQUNELCtGQUErRjtZQUMvRixJQUFJLENBQUMsb0JBQW9CLEVBQUU7U0FDNUIsQ0FBQTtRQWhEQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUM1QixDQUFDO0lBaUREOzs7O09BSUc7SUFDTyxtQkFBbUI7UUFDM0IsaURBQWlEO1FBQ2pELG9EQUFvRDtJQUN0RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxjQUFjLENBQUMsTUFTcEI7UUFDQyxNQUFNLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsR0FBRyxNQUFNLENBQUE7UUFFekUsZ0RBQWdEO1FBQ2hELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSx1QkFBYyxFQUNqQyxZQUFZLEVBQ1osT0FBTyxFQUNQLE9BQU8sSUFBSSxFQUFFLEVBQ2Isc0JBQXNCLENBQ3ZCLENBQUE7UUFFRCxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7Q0FDRjtBQTdGRCxnREE2RkMifQ==
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtYWN0aW9uLXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9tcG4tYXV0b21hdGlvbi9zZXJ2aWNlcy9lbWFpbC1hY3Rpb24tc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwrREFBeUQ7QUFDekQseUZBQTZGO0FBTzdGLE1BQWEsa0JBQW1CLFNBQVEsdUNBQWlCO0lBSXZEO1FBQ0UsS0FBSyxFQUFFLENBQUE7UUFKVCxPQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ1osVUFBSyxHQUFHLE9BQU8sQ0FBQTtRQU9mLFdBQU0sR0FBa0I7WUFDdEI7Z0JBQ0UsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsR0FBRyxFQUFFLElBQUk7Z0JBQ1QsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsSUFBSSxFQUFFLE9BQWdCO2dCQUN0QixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBRSxNQUFlO2dCQUNyQixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLE1BQU07Z0JBQ1osR0FBRyxFQUFFLE1BQU07Z0JBQ1gsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsSUFBSSxFQUFFLFVBQW1CO2dCQUN6QixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsR0FBRyxFQUFFLEtBQUs7Z0JBQ1YsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osSUFBSSxFQUFFLE9BQWdCO2dCQUN0QixRQUFRLEVBQUUsS0FBSzthQUNoQjtZQUNEO2dCQUNFLElBQUksRUFBRSxJQUFJO2dCQUNWLEdBQUcsRUFBRSxJQUFJO2dCQUNULEtBQUssRUFBRSxJQUFJO2dCQUNYLElBQUksRUFBRSxPQUFnQjtnQkFDdEIsUUFBUSxFQUFFLEtBQUs7YUFDaEI7WUFDRDtnQkFDRSxJQUFJLEVBQUUsU0FBUztnQkFDZixHQUFHLEVBQUUsU0FBUztnQkFDZCxLQUFLLEVBQUUsVUFBVTtnQkFDakIsSUFBSSxFQUFFLE9BQWdCO2dCQUN0QixRQUFRLEVBQUUsS0FBSzthQUNoQjtZQUNELCtGQUErRjtZQUMvRixJQUFJLENBQUMsb0JBQW9CLEVBQUU7U0FDNUIsQ0FBQTtRQWhEQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUM1QixDQUFDO0lBaUREOzs7O09BSUc7SUFDTyxtQkFBbUI7UUFDM0IsaURBQWlEO1FBQ2pELG9EQUFvRDtJQUN0RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxjQUFjLENBQUMsTUFTcEI7UUFLQyxNQUFNLEVBQ0osWUFBWSxFQUNaLE9BQU8sRUFDUCxPQUFPLEVBQ1Asc0JBQXNCLEdBQ3ZCLEdBQUcsTUFBTSxDQUFBO1FBRVYsZ0RBQWdEO1FBQ2hELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSx1QkFBYyxFQUNqQyxZQUFZLEVBQ1osT0FBTyxFQUNQLE9BQU8sSUFBSSxFQUFFLEVBQ2Isc0JBQXNCLENBQ3ZCLENBQUE7UUFFRCxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7Q0FDRjtBQXRHRCxnREFzR0MifQ==