@lyxa.ai/marketing 1.0.20 → 1.0.21

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 (181) hide show
  1. package/dist/lib/index.d.ts +343 -1
  2. package/dist/lib/index.d.ts.map +1 -1
  3. package/dist/lib/modules/coupon/routers/coupon.router.d.ts +338 -0
  4. package/dist/lib/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  5. package/dist/lib/modules/coupon/services/referral-code-coupon.service.d.ts.map +1 -1
  6. package/dist/lib/modules/coupon/services/referral-code-coupon.service.js +1 -0
  7. package/dist/lib/modules/coupon/services/referral-code-coupon.service.js.map +1 -1
  8. package/dist/lib/modules/coupon/services/referral-reward-coupon.service.d.ts.map +1 -1
  9. package/dist/lib/modules/coupon/services/referral-reward-coupon.service.js +5 -0
  10. package/dist/lib/modules/coupon/services/referral-reward-coupon.service.js.map +1 -1
  11. package/dist/lib/modules/coupon/transformers/coupon.transformer.d.ts +26 -0
  12. package/dist/lib/modules/coupon/transformers/coupon.transformer.d.ts.map +1 -1
  13. package/dist/lib/modules/coupon/validations/all-coupons.validation.d.ts +546 -0
  14. package/dist/lib/modules/coupon/validations/all-coupons.validation.d.ts.map +1 -1
  15. package/dist/lib/modules/coupon/validations/coupon.validation.d.ts +126 -0
  16. package/dist/lib/modules/coupon/validations/coupon.validation.d.ts.map +1 -1
  17. package/dist/lib/modules/coupon/validations/coupon.validation.js +5 -0
  18. package/dist/lib/modules/coupon/validations/coupon.validation.js.map +1 -1
  19. package/dist/lib/modules/coupon/validations/custom-coupon.validation.d.ts +45 -0
  20. package/dist/lib/modules/coupon/validations/custom-coupon.validation.d.ts.map +1 -1
  21. package/dist/lib/modules/coupon/validations/global-coupon.validation.d.ts +45 -0
  22. package/dist/lib/modules/coupon/validations/global-coupon.validation.d.ts.map +1 -1
  23. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.d.ts +45 -0
  24. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.d.ts.map +1 -1
  25. package/dist/lib/modules/coupon/validations/individual-user-coupon.validation.d.ts +45 -0
  26. package/dist/lib/modules/coupon/validations/individual-user-coupon.validation.d.ts.map +1 -1
  27. package/dist/lib/modules/coupon/validations/referral-code-coupon.validation.d.ts +9 -0
  28. package/dist/lib/modules/coupon/validations/referral-code-coupon.validation.d.ts.map +1 -1
  29. package/dist/lib/modules/coupon/validations/referral-reward-coupon.validation.d.ts +45 -0
  30. package/dist/lib/modules/coupon/validations/referral-reward-coupon.validation.d.ts.map +1 -1
  31. package/dist/lib/modules/loyalty-point-setting/routers/index.d.ts +2 -0
  32. package/dist/lib/modules/loyalty-point-setting/routers/index.d.ts.map +1 -0
  33. package/dist/lib/modules/loyalty-point-setting/routers/index.js +18 -0
  34. package/dist/lib/modules/loyalty-point-setting/routers/index.js.map +1 -0
  35. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts +321 -0
  36. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts.map +1 -0
  37. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.js +82 -0
  38. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.js.map +1 -0
  39. package/dist/lib/modules/loyalty-point-setting/services/index.d.ts +3 -0
  40. package/dist/lib/modules/loyalty-point-setting/services/index.d.ts.map +1 -0
  41. package/dist/lib/modules/loyalty-point-setting/services/index.js +19 -0
  42. package/dist/lib/modules/loyalty-point-setting/services/index.js.map +1 -0
  43. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts +16 -0
  44. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts.map +1 -0
  45. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.js +133 -0
  46. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.js.map +1 -0
  47. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts +16 -0
  48. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts.map +1 -0
  49. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.js +156 -0
  50. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.js.map +1 -0
  51. package/dist/lib/modules/loyalty-point-setting/transformers/index.d.ts +3 -0
  52. package/dist/lib/modules/loyalty-point-setting/transformers/index.d.ts.map +1 -0
  53. package/dist/lib/modules/loyalty-point-setting/transformers/index.js +19 -0
  54. package/dist/lib/modules/loyalty-point-setting/transformers/index.js.map +1 -0
  55. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts +8 -0
  56. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts.map +1 -0
  57. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.js +7 -0
  58. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.js.map +1 -0
  59. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts +9 -0
  60. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts.map +1 -0
  61. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.js +7 -0
  62. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.js.map +1 -0
  63. package/dist/lib/modules/loyalty-point-setting/validations/index.d.ts +3 -0
  64. package/dist/lib/modules/loyalty-point-setting/validations/index.d.ts.map +1 -0
  65. package/dist/lib/modules/loyalty-point-setting/validations/index.js +19 -0
  66. package/dist/lib/modules/loyalty-point-setting/validations/index.js.map +1 -0
  67. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts +170 -0
  68. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts.map +1 -0
  69. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.js +19 -0
  70. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.js.map +1 -0
  71. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts +188 -0
  72. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts.map +1 -0
  73. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.js +19 -0
  74. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.js.map +1 -0
  75. package/dist/lib/modules/marketing/routers/marketing.router.d.ts +5 -1
  76. package/dist/lib/modules/marketing/routers/marketing.router.d.ts.map +1 -1
  77. package/dist/lib/modules/marketing/routers/marketing.router.js +1 -1
  78. package/dist/lib/modules/marketing/routers/marketing.router.js.map +1 -1
  79. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.d.ts +12 -0
  80. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.d.ts.map +1 -0
  81. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.js +149 -0
  82. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.js.map +1 -0
  83. package/dist/lib/modules/marketing/services/marketing.service.d.ts +2 -2
  84. package/dist/lib/modules/marketing/services/marketing.service.d.ts.map +1 -1
  85. package/dist/lib/modules/marketing/services/marketing.service.js +2 -5
  86. package/dist/lib/modules/marketing/services/marketing.service.js.map +1 -1
  87. package/dist/lib/modules/marketing/transformers/buy1-get1-marketing.transformer.d.ts +1 -0
  88. package/dist/lib/modules/marketing/transformers/buy1-get1-marketing.transformer.d.ts.map +1 -1
  89. package/dist/lib/modules/marketing/transformers/discount-marketing.transformer.d.ts +2 -0
  90. package/dist/lib/modules/marketing/transformers/discount-marketing.transformer.d.ts.map +1 -1
  91. package/dist/lib/modules/marketing/transformers/free-delivery-marketing.transformer.d.ts +1 -0
  92. package/dist/lib/modules/marketing/transformers/free-delivery-marketing.transformer.d.ts.map +1 -1
  93. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts +47 -0
  94. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts.map +1 -0
  95. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.js +7 -0
  96. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.js.map +1 -0
  97. package/dist/lib/modules/marketing/validations/buy1-get1-marketing.validation.d.ts +14 -0
  98. package/dist/lib/modules/marketing/validations/buy1-get1-marketing.validation.d.ts.map +1 -1
  99. package/dist/lib/modules/marketing/validations/buy1-get1-marketing.validation.js +1 -0
  100. package/dist/lib/modules/marketing/validations/buy1-get1-marketing.validation.js.map +1 -1
  101. package/dist/lib/modules/marketing/validations/discount-marketing.validation.d.ts +28 -0
  102. package/dist/lib/modules/marketing/validations/discount-marketing.validation.d.ts.map +1 -1
  103. package/dist/lib/modules/marketing/validations/discount-marketing.validation.js +2 -0
  104. package/dist/lib/modules/marketing/validations/discount-marketing.validation.js.map +1 -1
  105. package/dist/lib/modules/marketing/validations/free-delivery-marketing.validation.d.ts +9 -0
  106. package/dist/lib/modules/marketing/validations/free-delivery-marketing.validation.d.ts.map +1 -1
  107. package/dist/lib/modules/marketing/validations/free-delivery-marketing.validation.js +1 -0
  108. package/dist/lib/modules/marketing/validations/free-delivery-marketing.validation.js.map +1 -1
  109. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.d.ts +504 -0
  110. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.d.ts.map +1 -0
  111. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.js +34 -0
  112. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.js.map +1 -0
  113. package/dist/types/index.d.ts +343 -1
  114. package/dist/types/index.d.ts.map +1 -1
  115. package/dist/types/modules/coupon/routers/coupon.router.d.ts +338 -0
  116. package/dist/types/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  117. package/dist/types/modules/coupon/services/referral-code-coupon.service.d.ts.map +1 -1
  118. package/dist/types/modules/coupon/services/referral-reward-coupon.service.d.ts.map +1 -1
  119. package/dist/types/modules/coupon/transformers/coupon.transformer.d.ts +26 -0
  120. package/dist/types/modules/coupon/transformers/coupon.transformer.d.ts.map +1 -1
  121. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts +546 -0
  122. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts.map +1 -1
  123. package/dist/types/modules/coupon/validations/coupon.validation.d.ts +126 -0
  124. package/dist/types/modules/coupon/validations/coupon.validation.d.ts.map +1 -1
  125. package/dist/types/modules/coupon/validations/custom-coupon.validation.d.ts +45 -0
  126. package/dist/types/modules/coupon/validations/custom-coupon.validation.d.ts.map +1 -1
  127. package/dist/types/modules/coupon/validations/global-coupon.validation.d.ts +45 -0
  128. package/dist/types/modules/coupon/validations/global-coupon.validation.d.ts.map +1 -1
  129. package/dist/types/modules/coupon/validations/individual-store-coupon.validation.d.ts +45 -0
  130. package/dist/types/modules/coupon/validations/individual-store-coupon.validation.d.ts.map +1 -1
  131. package/dist/types/modules/coupon/validations/individual-user-coupon.validation.d.ts +45 -0
  132. package/dist/types/modules/coupon/validations/individual-user-coupon.validation.d.ts.map +1 -1
  133. package/dist/types/modules/coupon/validations/referral-code-coupon.validation.d.ts +9 -0
  134. package/dist/types/modules/coupon/validations/referral-code-coupon.validation.d.ts.map +1 -1
  135. package/dist/types/modules/coupon/validations/referral-reward-coupon.validation.d.ts +45 -0
  136. package/dist/types/modules/coupon/validations/referral-reward-coupon.validation.d.ts.map +1 -1
  137. package/dist/types/modules/loyalty-point-setting/routers/index.d.ts +2 -0
  138. package/dist/types/modules/loyalty-point-setting/routers/index.d.ts.map +1 -0
  139. package/dist/types/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts +321 -0
  140. package/dist/types/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts.map +1 -0
  141. package/dist/types/modules/loyalty-point-setting/services/index.d.ts +3 -0
  142. package/dist/types/modules/loyalty-point-setting/services/index.d.ts.map +1 -0
  143. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts +37 -0
  144. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts.map +1 -0
  145. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts +34 -0
  146. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts.map +1 -0
  147. package/dist/types/modules/loyalty-point-setting/transformers/index.d.ts +3 -0
  148. package/dist/types/modules/loyalty-point-setting/transformers/index.d.ts.map +1 -0
  149. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts +8 -0
  150. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts.map +1 -0
  151. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts +9 -0
  152. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts.map +1 -0
  153. package/dist/types/modules/loyalty-point-setting/validations/index.d.ts +3 -0
  154. package/dist/types/modules/loyalty-point-setting/validations/index.d.ts.map +1 -0
  155. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts +179 -0
  156. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts.map +1 -0
  157. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts +197 -0
  158. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts.map +1 -0
  159. package/dist/types/modules/marketing/routers/marketing.router.d.ts +5 -1
  160. package/dist/types/modules/marketing/routers/marketing.router.d.ts.map +1 -1
  161. package/dist/types/modules/marketing/services/loyalty-point-marketing.service.d.ts +21 -0
  162. package/dist/types/modules/marketing/services/loyalty-point-marketing.service.d.ts.map +1 -0
  163. package/dist/types/modules/marketing/services/marketing.service.d.ts +2 -2
  164. package/dist/types/modules/marketing/services/marketing.service.d.ts.map +1 -1
  165. package/dist/types/modules/marketing/transformers/buy1-get1-marketing.transformer.d.ts +1 -0
  166. package/dist/types/modules/marketing/transformers/buy1-get1-marketing.transformer.d.ts.map +1 -1
  167. package/dist/types/modules/marketing/transformers/discount-marketing.transformer.d.ts +2 -0
  168. package/dist/types/modules/marketing/transformers/discount-marketing.transformer.d.ts.map +1 -1
  169. package/dist/types/modules/marketing/transformers/free-delivery-marketing.transformer.d.ts +1 -0
  170. package/dist/types/modules/marketing/transformers/free-delivery-marketing.transformer.d.ts.map +1 -1
  171. package/dist/types/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts +47 -0
  172. package/dist/types/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts.map +1 -0
  173. package/dist/types/modules/marketing/validations/buy1-get1-marketing.validation.d.ts +14 -0
  174. package/dist/types/modules/marketing/validations/buy1-get1-marketing.validation.d.ts.map +1 -1
  175. package/dist/types/modules/marketing/validations/discount-marketing.validation.d.ts +28 -0
  176. package/dist/types/modules/marketing/validations/discount-marketing.validation.d.ts.map +1 -1
  177. package/dist/types/modules/marketing/validations/free-delivery-marketing.validation.d.ts +9 -0
  178. package/dist/types/modules/marketing/validations/free-delivery-marketing.validation.d.ts.map +1 -1
  179. package/dist/types/modules/marketing/validations/loyalty-point-marketing.validation.d.ts +513 -0
  180. package/dist/types/modules/marketing/validations/loyalty-point-marketing.validation.d.ts.map +1 -0
  181. package/package.json +2 -2
@@ -29,7 +29,9 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
29
29
  valueType?: ValueType | null | undefined;
30
30
  }>, "many">>>;
31
31
  maxDiscountPerOrder: z.ZodDefault<z.ZodNumber>;
32
+ isMaxDiscountPerOrderEnabled: z.ZodDefault<z.ZodBoolean>;
32
33
  spendLimit: z.ZodDefault<z.ZodNumber>;
34
+ isSpendLimitEnabled: z.ZodDefault<z.ZodBoolean>;
33
35
  isOnlyForSubscriber: z.ZodDefault<z.ZodBoolean>;
34
36
  shop: z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>;
35
37
  isAppliedByCompany: z.ZodBoolean;
@@ -65,8 +67,10 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
65
67
  categories: import("mongoose").Types.ObjectId[];
66
68
  isEntireMenu: boolean;
67
69
  spendLimit: number;
70
+ isSpendLimitEnabled: boolean;
68
71
  isOnlyForSubscriber: boolean;
69
72
  maxDiscountPerOrder: number;
73
+ isMaxDiscountPerOrderEnabled: boolean;
70
74
  value?: number | undefined;
71
75
  valueType?: ValueType | undefined;
72
76
  categoryValueType?: ValueType | undefined;
@@ -93,10 +97,12 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
93
97
  categories?: (string | import("mongoose").Types.ObjectId)[] | undefined;
94
98
  isEntireMenu?: boolean | undefined;
95
99
  spendLimit?: number | undefined;
100
+ isSpendLimitEnabled?: boolean | undefined;
96
101
  isOnlyForSubscriber?: boolean | undefined;
97
102
  categoryValueType?: ValueType | undefined;
98
103
  categoryValue?: number | undefined;
99
104
  maxDiscountPerOrder?: number | undefined;
105
+ isMaxDiscountPerOrderEnabled?: boolean | undefined;
100
106
  }>, DiscountMarketingSchema: z.ZodObject<{
101
107
  marketingType: z.ZodOptional<z.ZodLiteral<MarketingType.DISCOUNT>>;
102
108
  categoryValueType: z.ZodOptional<z.ZodOptional<z.ZodNativeEnum<typeof ValueType>>>;
@@ -125,7 +131,9 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
125
131
  valueType?: ValueType | null | undefined;
126
132
  }>, "many">>>>;
127
133
  maxDiscountPerOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
134
+ isMaxDiscountPerOrderEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
128
135
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
136
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
129
137
  isOnlyForSubscriber: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
130
138
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
131
139
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
@@ -170,7 +178,9 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
170
178
  valueType?: ValueType | null | undefined;
171
179
  }>, "many">>>>;
172
180
  maxDiscountPerOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
181
+ isMaxDiscountPerOrderEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
173
182
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
183
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
174
184
  isOnlyForSubscriber: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
175
185
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
176
186
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
@@ -215,7 +225,9 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
215
225
  valueType?: ValueType | null | undefined;
216
226
  }>, "many">>>>;
217
227
  maxDiscountPerOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
228
+ isMaxDiscountPerOrderEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
218
229
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
230
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
219
231
  isOnlyForSubscriber: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
220
232
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
221
233
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
@@ -266,7 +278,9 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
266
278
  valueType?: ValueType | null | undefined;
267
279
  }>, "many">>>>;
268
280
  maxDiscountPerOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
281
+ isMaxDiscountPerOrderEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
269
282
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
283
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
270
284
  isOnlyForSubscriber: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
271
285
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
272
286
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
@@ -311,7 +325,9 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
311
325
  valueType?: ValueType | null | undefined;
312
326
  }>, "many">>>>;
313
327
  maxDiscountPerOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
328
+ isMaxDiscountPerOrderEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
314
329
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
330
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
315
331
  isOnlyForSubscriber: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
316
332
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
317
333
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
@@ -356,7 +372,9 @@ declare const DiscountMarketingValidationSchema: z.ZodObject<{
356
372
  valueType?: ValueType | null | undefined;
357
373
  }>, "many">>>>;
358
374
  maxDiscountPerOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
375
+ isMaxDiscountPerOrderEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
359
376
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
377
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
360
378
  isOnlyForSubscriber: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
361
379
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
362
380
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
@@ -402,7 +420,9 @@ declare const DiscountMarketingValidationSchemaRefined: z.ZodEffects<z.ZodObject
402
420
  valueType?: ValueType | null | undefined;
403
421
  }>, "many">>>;
404
422
  maxDiscountPerOrder: z.ZodDefault<z.ZodNumber>;
423
+ isMaxDiscountPerOrderEnabled: z.ZodDefault<z.ZodBoolean>;
405
424
  spendLimit: z.ZodDefault<z.ZodNumber>;
425
+ isSpendLimitEnabled: z.ZodDefault<z.ZodBoolean>;
406
426
  isOnlyForSubscriber: z.ZodDefault<z.ZodBoolean>;
407
427
  shop: z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>;
408
428
  isAppliedByCompany: z.ZodBoolean;
@@ -438,8 +458,10 @@ declare const DiscountMarketingValidationSchemaRefined: z.ZodEffects<z.ZodObject
438
458
  categories: import("mongoose").Types.ObjectId[];
439
459
  isEntireMenu: boolean;
440
460
  spendLimit: number;
461
+ isSpendLimitEnabled: boolean;
441
462
  isOnlyForSubscriber: boolean;
442
463
  maxDiscountPerOrder: number;
464
+ isMaxDiscountPerOrderEnabled: boolean;
443
465
  value?: number | undefined;
444
466
  valueType?: ValueType | undefined;
445
467
  categoryValueType?: ValueType | undefined;
@@ -466,10 +488,12 @@ declare const DiscountMarketingValidationSchemaRefined: z.ZodEffects<z.ZodObject
466
488
  categories?: (string | import("mongoose").Types.ObjectId)[] | undefined;
467
489
  isEntireMenu?: boolean | undefined;
468
490
  spendLimit?: number | undefined;
491
+ isSpendLimitEnabled?: boolean | undefined;
469
492
  isOnlyForSubscriber?: boolean | undefined;
470
493
  categoryValueType?: ValueType | undefined;
471
494
  categoryValue?: number | undefined;
472
495
  maxDiscountPerOrder?: number | undefined;
496
+ isMaxDiscountPerOrderEnabled?: boolean | undefined;
473
497
  }>, {
474
498
  isAppliedByCompany: boolean;
475
499
  shop: import("mongoose").Types.ObjectId;
@@ -490,8 +514,10 @@ declare const DiscountMarketingValidationSchemaRefined: z.ZodEffects<z.ZodObject
490
514
  categories: import("mongoose").Types.ObjectId[];
491
515
  isEntireMenu: boolean;
492
516
  spendLimit: number;
517
+ isSpendLimitEnabled: boolean;
493
518
  isOnlyForSubscriber: boolean;
494
519
  maxDiscountPerOrder: number;
520
+ isMaxDiscountPerOrderEnabled: boolean;
495
521
  value?: number | undefined;
496
522
  valueType?: ValueType | undefined;
497
523
  categoryValueType?: ValueType | undefined;
@@ -518,10 +544,12 @@ declare const DiscountMarketingValidationSchemaRefined: z.ZodEffects<z.ZodObject
518
544
  categories?: (string | import("mongoose").Types.ObjectId)[] | undefined;
519
545
  isEntireMenu?: boolean | undefined;
520
546
  spendLimit?: number | undefined;
547
+ isSpendLimitEnabled?: boolean | undefined;
521
548
  isOnlyForSubscriber?: boolean | undefined;
522
549
  categoryValueType?: ValueType | undefined;
523
550
  categoryValue?: number | undefined;
524
551
  maxDiscountPerOrder?: number | undefined;
552
+ isMaxDiscountPerOrderEnabled?: boolean | undefined;
525
553
  }>;
526
554
  export { DiscountMarketingValidationSchemaRefined as DiscountMarketingValidationSchema, DiscountMarketingSchema, DiscountMarketingIdSchema as DiscountMarketingIdValidationSchema, UpdateDiscountMarketingSchema, };
527
555
  export type CreateDiscountMarketingDTO = DTO<typeof DiscountMarketingValidationSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"discount-marketing.validation.d.ts","sourceRoot":"/","sources":["modules/marketing/validations/discount-marketing.validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAGN,GAAG,EACH,MAAM,2DAA2D,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAgC7E,QAAA,MACa,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAC/B,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAC3B,yBAAyB,mNACrB,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCACQ,CAAC;AAErD,QAAA,MAAM,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoC7C,CAAC;AAKF,OAAO,EACN,wCAAwC,IAAI,iCAAiC,EAC7E,uBAAuB,EACvB,yBAAyB,IAAI,mCAAmC,EAChE,6BAA6B,GAC7B,CAAC;AAKF,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,OAAO,iCAAiC,CAAC,CAAC;AACvF,MAAM,MAAM,oBAAoB,GAAG,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACvE,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC"}
1
+ {"version":3,"file":"discount-marketing.validation.d.ts","sourceRoot":"/","sources":["modules/marketing/validations/discount-marketing.validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAGN,GAAG,EACH,MAAM,2DAA2D,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAkC7E,QAAA,MACa,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAC/B,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAC3B,yBAAyB,mNACrB,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCACQ,CAAC;AAErD,QAAA,MAAM,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoC7C,CAAC;AAKF,OAAO,EACN,wCAAwC,IAAI,iCAAiC,EAC7E,uBAAuB,EACvB,yBAAyB,IAAI,mCAAmC,EAChE,6BAA6B,GAC7B,CAAC;AAKF,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,OAAO,iCAAiC,CAAC,CAAC;AACvF,MAAM,MAAM,oBAAoB,GAAG,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACvE,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC"}
@@ -17,7 +17,9 @@ const baseFields = {
17
17
  value: global_validation_1.ZodValidation.number('Value').optional(),
18
18
  products: global_validation_1.ZodValidation.array(zod_1.z.object(product_marketing_validation_1.baseFields), 'Products').optional().default([]),
19
19
  maxDiscountPerOrder: global_validation_1.ZodValidation.number('Max discount per order').default(0),
20
+ isMaxDiscountPerOrderEnabled: global_validation_1.ZodValidation.boolean('Is max discount per order enabled').default(false),
20
21
  spendLimit: global_validation_1.ZodValidation.number('Spend limit').default(0),
22
+ isSpendLimitEnabled: global_validation_1.ZodValidation.boolean('Is spend limit enabled').default(false),
21
23
  isOnlyForSubscriber: global_validation_1.ZodValidation.boolean('IsOnlyForSubscriber').default(false),
22
24
  };
23
25
  const schemaBuilder = (0, global_validation_1.createSchemaBuilder)(baseFields);
@@ -1 +1 @@
1
- {"version":3,"file":"discount-marketing.validation.js","sourceRoot":"/","sources":["modules/marketing/validations/discount-marketing.validation.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport {\n\tZodValidation,\n\tcreateSchemaBuilder,\n\tDTO,\n} from '@lyxa.ai/core/dist/utilities/validation/global-validation';\nimport { MarketingType, ValueType } from '@lyxa.ai/core/dist/utilities/enum';\nimport { baseMarketingFields } from './marketing.validation';\nimport { baseFields as baseProductMarketingFields } from './product-marketing.validation';\n\n/**\n * Define the base parent schema fields\n */\nconst baseFields = {\n\t...baseMarketingFields,\n\tmarketingType: z.literal(MarketingType.DISCOUNT),\n\tcategoryValueType: ZodValidation.enumType(ValueType, 'Category value type').optional(),\n\tcategoryValue: ZodValidation.number('Category value').optional(),\n\tcategories: ZodValidation.array(ZodValidation.objectId('Category'), 'Categories').optional().default([]),\n\tisEntireMenu: ZodValidation.boolean('IsEntireMenu').default(false),\n\tvalueType: ZodValidation.enumType(ValueType, 'Value type').optional(),\n\tvalue: ZodValidation.number('Value').optional(),\n\tproducts: ZodValidation.array(z.object(baseProductMarketingFields), 'Products').optional().default([]),\n\tmaxDiscountPerOrder: ZodValidation.number('Max discount per order').default(0),\n\tspendLimit: ZodValidation.number('Spend limit').default(0),\n\tisOnlyForSubscriber: ZodValidation.boolean('IsOnlyForSubscriber').default(false),\n};\n\n/**\n * Create schema builder for Parent entity\n * - Includes timestamps\n * - Excludes 'createdAt' from update operations\n */\nconst schemaBuilder = createSchemaBuilder(baseFields);\n\n/**\n * Get all schemas for the Parent entity\n */\nconst {\n\tBaseSchema: DiscountMarketingValidationSchema,\n\tEntitySchema: DiscountMarketingSchema,\n\tIdSchema: DiscountMarketingIdSchema,\n\tUpdateSchema: UpdateDiscountMarketingSchema,\n} = schemaBuilder.getAllSchemas({ createdAt: true });\n\nconst DiscountMarketingValidationSchemaRefined = DiscountMarketingValidationSchema.superRefine(\n\t(data, ctx) => {\n\t\tif (data.maxDiscountPerOrder && data.spendLimit) {\n\t\t\tif (data.maxDiscountPerOrder > data.spendLimit) {\n\t\t\t\tctx.addIssue({\n\t\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\t\tmessage: 'Spend limit cannot be less than max discount per order',\n\t\t\t\t\tpath: ['maxDiscountPerOrder', 'spendLimit'],\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tif (data.categories.length > 0 && (!data.categoryValue || !data.categoryValueType)) {\n\t\t\tctx.addIssue({\n\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\tmessage: 'Please provide discount information for categories',\n\t\t\t\tpath: ['categories', 'categoryValue', 'categoryValueType'],\n\t\t\t});\n\t\t}\n\n\t\tif (data.products.length > 0 && (data.value || data.valueType || data.isEntireMenu)) {\n\t\t\tctx.addIssue({\n\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\tmessage: 'Please provide discount information for either individual products or the entire menu',\n\t\t\t\tpath: ['products', 'value', 'valueType', 'isEntireMenu'],\n\t\t\t});\n\t\t}\n\n\t\tif (data.products.length < 1 && data.categories.length < 1 && !(data.value && data.valueType && data.isEntireMenu)) {\n\t\t\tctx.addIssue({\n\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\tmessage: 'Please provide discount information for individual products or categories or the entire menu',\n\t\t\t\tpath: ['products', 'value', 'valueType', 'isEntireMenu', 'categories'],\n\t\t\t});\n\t\t}\n\t}\n);\n\n/**\n * Export schemas\n */\nexport {\n\tDiscountMarketingValidationSchemaRefined as DiscountMarketingValidationSchema,\n\tDiscountMarketingSchema,\n\tDiscountMarketingIdSchema as DiscountMarketingIdValidationSchema,\n\tUpdateDiscountMarketingSchema,\n};\n\n/**\n * Export DTO types\n */\nexport type CreateDiscountMarketingDTO = DTO<typeof DiscountMarketingValidationSchema>;\nexport type DiscountMarketingDTO = DTO<typeof DiscountMarketingSchema>;\nexport type UpdateDiscountMarketingDTO = DTO<typeof UpdateDiscountMarketingSchema>;\n"]}
1
+ {"version":3,"file":"discount-marketing.validation.js","sourceRoot":"/","sources":["modules/marketing/validations/discount-marketing.validation.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport {\n\tZodValidation,\n\tcreateSchemaBuilder,\n\tDTO,\n} from '@lyxa.ai/core/dist/utilities/validation/global-validation';\nimport { MarketingType, ValueType } from '@lyxa.ai/core/dist/utilities/enum';\nimport { baseMarketingFields } from './marketing.validation';\nimport { baseFields as baseProductMarketingFields } from './product-marketing.validation';\n\n/**\n * Define the base parent schema fields\n */\nconst baseFields = {\n\t...baseMarketingFields,\n\tmarketingType: z.literal(MarketingType.DISCOUNT),\n\tcategoryValueType: ZodValidation.enumType(ValueType, 'Category value type').optional(),\n\tcategoryValue: ZodValidation.number('Category value').optional(),\n\tcategories: ZodValidation.array(ZodValidation.objectId('Category'), 'Categories').optional().default([]),\n\tisEntireMenu: ZodValidation.boolean('IsEntireMenu').default(false),\n\tvalueType: ZodValidation.enumType(ValueType, 'Value type').optional(),\n\tvalue: ZodValidation.number('Value').optional(),\n\tproducts: ZodValidation.array(z.object(baseProductMarketingFields), 'Products').optional().default([]),\n\tmaxDiscountPerOrder: ZodValidation.number('Max discount per order').default(0),\n\tisMaxDiscountPerOrderEnabled: ZodValidation.boolean('Is max discount per order enabled').default(false),\n\tspendLimit: ZodValidation.number('Spend limit').default(0),\n\tisSpendLimitEnabled: ZodValidation.boolean('Is spend limit enabled').default(false),\n\tisOnlyForSubscriber: ZodValidation.boolean('IsOnlyForSubscriber').default(false),\n};\n\n/**\n * Create schema builder for Parent entity\n * - Includes timestamps\n * - Excludes 'createdAt' from update operations\n */\nconst schemaBuilder = createSchemaBuilder(baseFields);\n\n/**\n * Get all schemas for the Parent entity\n */\nconst {\n\tBaseSchema: DiscountMarketingValidationSchema,\n\tEntitySchema: DiscountMarketingSchema,\n\tIdSchema: DiscountMarketingIdSchema,\n\tUpdateSchema: UpdateDiscountMarketingSchema,\n} = schemaBuilder.getAllSchemas({ createdAt: true });\n\nconst DiscountMarketingValidationSchemaRefined = DiscountMarketingValidationSchema.superRefine(\n\t(data, ctx) => {\n\t\tif (data.maxDiscountPerOrder && data.spendLimit) {\n\t\t\tif (data.maxDiscountPerOrder > data.spendLimit) {\n\t\t\t\tctx.addIssue({\n\t\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\t\tmessage: 'Spend limit cannot be less than max discount per order',\n\t\t\t\t\tpath: ['maxDiscountPerOrder', 'spendLimit'],\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tif (data.categories.length > 0 && (!data.categoryValue || !data.categoryValueType)) {\n\t\t\tctx.addIssue({\n\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\tmessage: 'Please provide discount information for categories',\n\t\t\t\tpath: ['categories', 'categoryValue', 'categoryValueType'],\n\t\t\t});\n\t\t}\n\n\t\tif (data.products.length > 0 && (data.value || data.valueType || data.isEntireMenu)) {\n\t\t\tctx.addIssue({\n\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\tmessage: 'Please provide discount information for either individual products or the entire menu',\n\t\t\t\tpath: ['products', 'value', 'valueType', 'isEntireMenu'],\n\t\t\t});\n\t\t}\n\n\t\tif (data.products.length < 1 && data.categories.length < 1 && !(data.value && data.valueType && data.isEntireMenu)) {\n\t\t\tctx.addIssue({\n\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\tmessage: 'Please provide discount information for individual products or categories or the entire menu',\n\t\t\t\tpath: ['products', 'value', 'valueType', 'isEntireMenu', 'categories'],\n\t\t\t});\n\t\t}\n\t}\n);\n\n/**\n * Export schemas\n */\nexport {\n\tDiscountMarketingValidationSchemaRefined as DiscountMarketingValidationSchema,\n\tDiscountMarketingSchema,\n\tDiscountMarketingIdSchema as DiscountMarketingIdValidationSchema,\n\tUpdateDiscountMarketingSchema,\n};\n\n/**\n * Export DTO types\n */\nexport type CreateDiscountMarketingDTO = DTO<typeof DiscountMarketingValidationSchema>;\nexport type DiscountMarketingDTO = DTO<typeof DiscountMarketingSchema>;\nexport type UpdateDiscountMarketingDTO = DTO<typeof UpdateDiscountMarketingSchema>;\n"]}
@@ -4,6 +4,7 @@ import { MarketingType } from '@lyxa.ai/core/dist/utilities/enum';
4
4
  declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
5
5
  marketingType: z.ZodLiteral<MarketingType.FREE_DELIVERY>;
6
6
  spendLimit: z.ZodDefault<z.ZodNumber>;
7
+ isSpendLimitEnabled: z.ZodDefault<z.ZodBoolean>;
7
8
  shop: z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>;
8
9
  isAppliedByCompany: z.ZodBoolean;
9
10
  duration: z.ZodObject<{
@@ -29,6 +30,7 @@ declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
29
30
  };
30
31
  pausedAt: Date | null;
31
32
  spendLimit: number;
33
+ isSpendLimitEnabled: boolean;
32
34
  }, {
33
35
  isAppliedByCompany: boolean;
34
36
  shop: string | import("mongoose").Types.ObjectId;
@@ -40,9 +42,11 @@ declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
40
42
  status?: import("@lyxa.ai/core/dist/utilities/enum").MarketingStatus | undefined;
41
43
  pausedAt?: string | Date | null | undefined;
42
44
  spendLimit?: number | undefined;
45
+ isSpendLimitEnabled?: boolean | undefined;
43
46
  }>, FreeDeliveryMarketingSchema: z.ZodObject<{
44
47
  marketingType: z.ZodOptional<z.ZodLiteral<MarketingType.FREE_DELIVERY>>;
45
48
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
49
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
46
50
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
47
51
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
48
52
  duration: z.ZodOptional<z.ZodObject<{
@@ -61,6 +65,7 @@ declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
61
65
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
62
66
  marketingType: z.ZodOptional<z.ZodLiteral<MarketingType.FREE_DELIVERY>>;
63
67
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
68
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
64
69
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
65
70
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
66
71
  duration: z.ZodOptional<z.ZodObject<{
@@ -79,6 +84,7 @@ declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
79
84
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
80
85
  marketingType: z.ZodOptional<z.ZodLiteral<MarketingType.FREE_DELIVERY>>;
81
86
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
87
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
82
88
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
83
89
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
84
90
  duration: z.ZodOptional<z.ZodObject<{
@@ -103,6 +109,7 @@ declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
103
109
  }> | z.ZodObject<{
104
110
  marketingType: z.ZodOptional<z.ZodLiteral<MarketingType.FREE_DELIVERY>>;
105
111
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
112
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
106
113
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
107
114
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
108
115
  duration: z.ZodOptional<z.ZodObject<{
@@ -121,6 +128,7 @@ declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
121
128
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
122
129
  marketingType: z.ZodOptional<z.ZodLiteral<MarketingType.FREE_DELIVERY>>;
123
130
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
131
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
124
132
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
125
133
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
126
134
  duration: z.ZodOptional<z.ZodObject<{
@@ -139,6 +147,7 @@ declare const FreeDeliveryMarketingValidationSchema: z.ZodObject<{
139
147
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
140
148
  marketingType: z.ZodOptional<z.ZodLiteral<MarketingType.FREE_DELIVERY>>;
141
149
  spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
150
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
142
151
  shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
143
152
  isAppliedByCompany: z.ZodOptional<z.ZodBoolean>;
144
153
  duration: z.ZodOptional<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"free-delivery-marketing.validation.d.ts","sourceRoot":"/","sources":["modules/marketing/validations/free-delivery-marketing.validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAGN,GAAG,EACH,MAAM,2DAA2D,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAqBlE,QAAA,MACa,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IACnC,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAC/B,6BAA6B,mNACzB,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCACI,CAAC;AAKrD,OAAO,EACN,qCAAqC,EACrC,2BAA2B,EAC3B,6BAA6B,IAAI,uCAAuC,EACxE,iCAAiC,GACjC,CAAC;AAKF,MAAM,MAAM,8BAA8B,GAAG,GAAG,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAC/F,MAAM,MAAM,wBAAwB,GAAG,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAC/E,MAAM,MAAM,8BAA8B,GAAG,GAAG,CAAC,OAAO,iCAAiC,CAAC,CAAC"}
1
+ {"version":3,"file":"free-delivery-marketing.validation.d.ts","sourceRoot":"/","sources":["modules/marketing/validations/free-delivery-marketing.validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAGN,GAAG,EACH,MAAM,2DAA2D,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAsBlE,QAAA,MACa,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IACnC,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAC/B,6BAA6B,mNACzB,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCACI,CAAC;AAKrD,OAAO,EACN,qCAAqC,EACrC,2BAA2B,EAC3B,6BAA6B,IAAI,uCAAuC,EACxE,iCAAiC,GACjC,CAAC;AAKF,MAAM,MAAM,8BAA8B,GAAG,GAAG,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAC/F,MAAM,MAAM,wBAAwB,GAAG,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAC/E,MAAM,MAAM,8BAA8B,GAAG,GAAG,CAAC,OAAO,iCAAiC,CAAC,CAAC"}
@@ -9,6 +9,7 @@ const baseFields = {
9
9
  ...marketing_validation_1.baseMarketingFields,
10
10
  marketingType: zod_1.z.literal(enum_1.MarketingType.FREE_DELIVERY),
11
11
  spendLimit: global_validation_1.ZodValidation.number('Spend limit').default(0),
12
+ isSpendLimitEnabled: global_validation_1.ZodValidation.boolean('Is spend limit enabled').default(false),
12
13
  };
13
14
  const schemaBuilder = (0, global_validation_1.createSchemaBuilder)(baseFields);
14
15
  const { BaseSchema: FreeDeliveryMarketingValidationSchema, EntitySchema: FreeDeliveryMarketingSchema, IdSchema: FreeDeliveryMarketingIdSchema, UpdateSchema: UpdateFreeDeliveryMarketingSchema, } = schemaBuilder.getAllSchemas({ createdAt: true });
@@ -1 +1 @@
1
- {"version":3,"file":"free-delivery-marketing.validation.js","sourceRoot":"/","sources":["modules/marketing/validations/free-delivery-marketing.validation.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,iGAImE;AACnE,iEAA6D;AAC7D,4DAAkE;AAKlE,MAAM,UAAU,GAAG;IAClB,GAAG,0CAAmB;IACtB,aAAa,EAAE,OAAC,CAAC,OAAO,CAAC,oBAAa,CAAC,aAAa,CAAC;IACrD,UAAU,EAAE,iCAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;CAC1D,CAAC;AAOF,MAAM,aAAa,GAAG,IAAA,uCAAmB,EAAC,UAAU,CAAC,CAAC;AAKtD,MAAM,EACL,UAAU,EAAE,qCAAqC,EACjD,YAAY,EAAE,2BAA2B,EACzC,QAAQ,EAAE,6BAA6B,EACvC,YAAY,EAAE,iCAAiC,GAC/C,GAAG,aAAa,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAMpD,sFAAqC;AACrC,kEAA2B;AACM,gFAAuC;AACxE,8EAAiC","sourcesContent":["import { z } from 'zod';\nimport {\n\tZodValidation,\n\tcreateSchemaBuilder,\n\tDTO\n} from '@lyxa.ai/core/dist/utilities/validation/global-validation';\nimport { baseMarketingFields } from './marketing.validation';\nimport { MarketingType } from '@lyxa.ai/core/dist/utilities/enum';\n\n/**\n * Define the base parent schema fields\n */\nconst baseFields = {\n\t...baseMarketingFields,\n\tmarketingType: z.literal(MarketingType.FREE_DELIVERY),\n\tspendLimit: ZodValidation.number('Spend limit').default(0),\n};\n\n/**\n * Create schema builder for Parent entity\n * - Includes timestamps\n * - Excludes 'createdAt' from update operations\n */\nconst schemaBuilder = createSchemaBuilder(baseFields);\n\n/**\n * Get all schemas for the Parent entity\n */\nconst {\n\tBaseSchema: FreeDeliveryMarketingValidationSchema,\n\tEntitySchema: FreeDeliveryMarketingSchema,\n\tIdSchema: FreeDeliveryMarketingIdSchema,\n\tUpdateSchema: UpdateFreeDeliveryMarketingSchema,\n} = schemaBuilder.getAllSchemas({ createdAt: true });\n\n/**\n * Export schemas\n */\nexport {\n\tFreeDeliveryMarketingValidationSchema,\n\tFreeDeliveryMarketingSchema,\n\tFreeDeliveryMarketingIdSchema as FreeDeliveryMarketingIdValidationSchema,\n\tUpdateFreeDeliveryMarketingSchema,\n};\n\n/**\n * Export DTO types\n */\nexport type CreateFreeDeliveryMarketingDTO = DTO<typeof FreeDeliveryMarketingValidationSchema>;\nexport type FreeDeliveryMarketingDTO = DTO<typeof FreeDeliveryMarketingSchema>;\nexport type UpdateFreeDeliveryMarketingDTO = DTO<typeof UpdateFreeDeliveryMarketingSchema>;\n"]}
1
+ {"version":3,"file":"free-delivery-marketing.validation.js","sourceRoot":"/","sources":["modules/marketing/validations/free-delivery-marketing.validation.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,iGAImE;AACnE,iEAA6D;AAC7D,4DAAkE;AAKlE,MAAM,UAAU,GAAG;IAClB,GAAG,0CAAmB;IACtB,aAAa,EAAE,OAAC,CAAC,OAAO,CAAC,oBAAa,CAAC,aAAa,CAAC;IACrD,UAAU,EAAE,iCAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,mBAAmB,EAAE,iCAAa,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;CACnF,CAAC;AAOF,MAAM,aAAa,GAAG,IAAA,uCAAmB,EAAC,UAAU,CAAC,CAAC;AAKtD,MAAM,EACL,UAAU,EAAE,qCAAqC,EACjD,YAAY,EAAE,2BAA2B,EACzC,QAAQ,EAAE,6BAA6B,EACvC,YAAY,EAAE,iCAAiC,GAC/C,GAAG,aAAa,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAMpD,sFAAqC;AACrC,kEAA2B;AACM,gFAAuC;AACxE,8EAAiC","sourcesContent":["import { z } from 'zod';\nimport {\n\tZodValidation,\n\tcreateSchemaBuilder,\n\tDTO\n} from '@lyxa.ai/core/dist/utilities/validation/global-validation';\nimport { baseMarketingFields } from './marketing.validation';\nimport { MarketingType } from '@lyxa.ai/core/dist/utilities/enum';\n\n/**\n * Define the base parent schema fields\n */\nconst baseFields = {\n\t...baseMarketingFields,\n\tmarketingType: z.literal(MarketingType.FREE_DELIVERY),\n\tspendLimit: ZodValidation.number('Spend limit').default(0),\n\tisSpendLimitEnabled: ZodValidation.boolean('Is spend limit enabled').default(false),\n};\n\n/**\n * Create schema builder for Parent entity\n * - Includes timestamps\n * - Excludes 'createdAt' from update operations\n */\nconst schemaBuilder = createSchemaBuilder(baseFields);\n\n/**\n * Get all schemas for the Parent entity\n */\nconst {\n\tBaseSchema: FreeDeliveryMarketingValidationSchema,\n\tEntitySchema: FreeDeliveryMarketingSchema,\n\tIdSchema: FreeDeliveryMarketingIdSchema,\n\tUpdateSchema: UpdateFreeDeliveryMarketingSchema,\n} = schemaBuilder.getAllSchemas({ createdAt: true });\n\n/**\n * Export schemas\n */\nexport {\n\tFreeDeliveryMarketingValidationSchema,\n\tFreeDeliveryMarketingSchema,\n\tFreeDeliveryMarketingIdSchema as FreeDeliveryMarketingIdValidationSchema,\n\tUpdateFreeDeliveryMarketingSchema,\n};\n\n/**\n * Export DTO types\n */\nexport type CreateFreeDeliveryMarketingDTO = DTO<typeof FreeDeliveryMarketingValidationSchema>;\nexport type FreeDeliveryMarketingDTO = DTO<typeof FreeDeliveryMarketingSchema>;\nexport type UpdateFreeDeliveryMarketingDTO = DTO<typeof UpdateFreeDeliveryMarketingSchema>;\n"]}