@veruna/api-contracts 15.1.0 → 17.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 (336) hide show
  1. package/build/controllers/index.d.ts +3 -1
  2. package/build/controllers/index.js +8 -2
  3. package/build/controllers/index.js.map +1 -1
  4. package/build/controllers/notifications.controllers.d.ts +1 -0
  5. package/build/controllers/notifications.controllers.js +2 -1
  6. package/build/controllers/notifications.controllers.js.map +1 -1
  7. package/build/controllers/offers-unreg.controllers.d.ts +1 -0
  8. package/build/controllers/offers-unreg.controllers.js +5 -0
  9. package/build/controllers/offers-unreg.controllers.js.map +1 -0
  10. package/build/controllers/offers.controllers.d.ts +1 -0
  11. package/build/controllers/offers.controllers.js +5 -0
  12. package/build/controllers/offers.controllers.js.map +1 -0
  13. package/build/locales/validation.d.ts +482 -0
  14. package/build/locales/validation.js +340 -0
  15. package/build/locales/validation.js.map +1 -1
  16. package/build/rest-api.d.ts +24 -0
  17. package/build/rest-api.js +24 -0
  18. package/build/rest-api.js.map +1 -1
  19. package/build/routes/index.d.ts +3 -1
  20. package/build/routes/index.js +7 -2
  21. package/build/routes/index.js.map +1 -1
  22. package/build/routes/notifications.routes.d.ts +3 -0
  23. package/build/routes/notifications.routes.js +4 -1
  24. package/build/routes/notifications.routes.js.map +1 -1
  25. package/build/routes/offers.routes.d.ts +16 -0
  26. package/build/routes/offers.routes.js +20 -0
  27. package/build/routes/offers.routes.js.map +1 -0
  28. package/build/routes/web-notifications.routes.d.ts +3 -0
  29. package/build/routes/web-notifications.routes.js +3 -0
  30. package/build/routes/web-notifications.routes.js.map +1 -1
  31. package/build/shared/frontend-routes.d.ts +2 -0
  32. package/build/shared/frontend-routes.js +9 -1
  33. package/build/shared/frontend-routes.js.map +1 -1
  34. package/build/shared/regex.d.ts +1 -0
  35. package/build/shared/regex.js +2 -1
  36. package/build/shared/regex.js.map +1 -1
  37. package/build/tsconfig.tsbuildinfo +1 -1
  38. package/build/v1/ai/ai.errors.d.ts +1 -0
  39. package/build/v1/ai/ai.errors.js +5 -0
  40. package/build/v1/ai/ai.errors.js.map +1 -1
  41. package/build/v1/attribution/schemas/conversion-type.enum.d.ts +6 -1
  42. package/build/v1/attribution/schemas/conversion-type.enum.js +5 -0
  43. package/build/v1/attribution/schemas/conversion-type.enum.js.map +1 -1
  44. package/build/v1/engagement/schemas/lifecycle-campaign.enum.d.ts +0 -6
  45. package/build/v1/engagement/schemas/lifecycle-campaign.enum.js +0 -6
  46. package/build/v1/engagement/schemas/lifecycle-campaign.enum.js.map +1 -1
  47. package/build/v1/engagement/schemas/lifecycle-stage.enum.d.ts +3 -0
  48. package/build/v1/engagement/schemas/lifecycle-stage.enum.js +3 -0
  49. package/build/v1/engagement/schemas/lifecycle-stage.enum.js.map +1 -1
  50. package/build/v1/engagement/schemas/suppression-channel.enum.d.ts +3 -1
  51. package/build/v1/engagement/schemas/suppression-channel.enum.js +2 -0
  52. package/build/v1/engagement/schemas/suppression-channel.enum.js.map +1 -1
  53. package/build/v1/index.d.ts +1 -0
  54. package/build/v1/index.js +1 -0
  55. package/build/v1/index.js.map +1 -1
  56. package/build/v1/notifications/schemas/email-template.enum.d.ts +2 -8
  57. package/build/v1/notifications/schemas/email-template.enum.js +1 -7
  58. package/build/v1/notifications/schemas/email-template.enum.js.map +1 -1
  59. package/build/v1/notifications/schemas/index.d.ts +1 -0
  60. package/build/v1/notifications/schemas/index.js +1 -0
  61. package/build/v1/notifications/schemas/index.js.map +1 -1
  62. package/build/v1/notifications/schemas/notification-channel.enum.d.ts +3 -1
  63. package/build/v1/notifications/schemas/notification-channel.enum.js +2 -0
  64. package/build/v1/notifications/schemas/notification-channel.enum.js.map +1 -1
  65. package/build/v1/notifications/schemas/notification-job-status.enum.d.ts +2 -1
  66. package/build/v1/notifications/schemas/notification-job-status.enum.js +1 -0
  67. package/build/v1/notifications/schemas/notification-job-status.enum.js.map +1 -1
  68. package/build/v1/notifications/schemas/unsubscribe-params.schema.d.ts +6 -0
  69. package/build/v1/notifications/schemas/unsubscribe-params.schema.js +16 -0
  70. package/build/v1/notifications/schemas/unsubscribe-params.schema.js.map +1 -0
  71. package/build/v1/offers/commands/admin-create-offer-campaign.command.d.ts +125 -0
  72. package/build/v1/offers/commands/admin-create-offer-campaign.command.js +14 -0
  73. package/build/v1/offers/commands/admin-create-offer-campaign.command.js.map +1 -0
  74. package/build/v1/offers/commands/admin-delete-offer-campaign.command.d.ts +12 -0
  75. package/build/v1/offers/commands/admin-delete-offer-campaign.command.js +15 -0
  76. package/build/v1/offers/commands/admin-delete-offer-campaign.command.js.map +1 -0
  77. package/build/v1/offers/commands/admin-issue-offer-campaign.command.d.ts +15 -0
  78. package/build/v1/offers/commands/admin-issue-offer-campaign.command.js +14 -0
  79. package/build/v1/offers/commands/admin-issue-offer-campaign.command.js.map +1 -0
  80. package/build/v1/offers/commands/admin-revoke-offer-campaign.command.d.ts +16 -0
  81. package/build/v1/offers/commands/admin-revoke-offer-campaign.command.js +15 -0
  82. package/build/v1/offers/commands/admin-revoke-offer-campaign.command.js.map +1 -0
  83. package/build/v1/offers/commands/admin-update-offer-campaign.command.d.ts +124 -0
  84. package/build/v1/offers/commands/admin-update-offer-campaign.command.js +14 -0
  85. package/build/v1/offers/commands/admin-update-offer-campaign.command.js.map +1 -0
  86. package/build/v1/offers/commands/index.d.ts +6 -0
  87. package/build/v1/offers/commands/index.js +25 -0
  88. package/build/v1/offers/commands/index.js.map +1 -0
  89. package/build/v1/offers/commands/unreg-track-header-offer.command.d.ts +11 -0
  90. package/build/v1/offers/commands/unreg-track-header-offer.command.js +15 -0
  91. package/build/v1/offers/commands/unreg-track-header-offer.command.js.map +1 -0
  92. package/build/v1/offers/index.d.ts +6 -0
  93. package/build/v1/offers/index.js +26 -0
  94. package/build/v1/offers/index.js.map +1 -0
  95. package/build/v1/offers/offers.errors.d.ts +13 -0
  96. package/build/v1/offers/offers.errors.js +54 -0
  97. package/build/v1/offers/offers.errors.js.map +1 -0
  98. package/build/v1/offers/queries/admin-get-offer-campaign-by-id.query.d.ts +70 -0
  99. package/build/v1/offers/queries/admin-get-offer-campaign-by-id.query.js +15 -0
  100. package/build/v1/offers/queries/admin-get-offer-campaign-by-id.query.js.map +1 -0
  101. package/build/v1/offers/queries/admin-get-offer-campaign-stats.query.d.ts +21 -0
  102. package/build/v1/offers/queries/admin-get-offer-campaign-stats.query.js +15 -0
  103. package/build/v1/offers/queries/admin-get-offer-campaign-stats.query.js.map +1 -0
  104. package/build/v1/offers/queries/admin-list-offer-campaigns.query.d.ts +83 -0
  105. package/build/v1/offers/queries/admin-list-offer-campaigns.query.js +14 -0
  106. package/build/v1/offers/queries/admin-list-offer-campaigns.query.js.map +1 -0
  107. package/build/v1/offers/queries/admin-list-user-offers.query.d.ts +34 -0
  108. package/build/v1/offers/queries/admin-list-user-offers.query.js +14 -0
  109. package/build/v1/offers/queries/admin-list-user-offers.query.js.map +1 -0
  110. package/build/v1/offers/queries/index.d.ts +5 -0
  111. package/build/v1/offers/queries/index.js +24 -0
  112. package/build/v1/offers/queries/index.js.map +1 -0
  113. package/build/v1/offers/queries/unreg-get-header-offer.query.d.ts +23 -0
  114. package/build/v1/offers/queries/unreg-get-header-offer.query.js +15 -0
  115. package/build/v1/offers/queries/unreg-get-header-offer.query.js.map +1 -0
  116. package/build/v1/offers/schemas/admin-list-offer-campaigns-filters.schema.d.ts +18 -0
  117. package/build/v1/offers/schemas/admin-list-offer-campaigns-filters.schema.js +45 -0
  118. package/build/v1/offers/schemas/admin-list-offer-campaigns-filters.schema.js.map +1 -0
  119. package/build/v1/offers/schemas/admin-list-user-offers-filters.schema.d.ts +9 -0
  120. package/build/v1/offers/schemas/admin-list-user-offers-filters.schema.js +25 -0
  121. package/build/v1/offers/schemas/admin-list-user-offers-filters.schema.js.map +1 -0
  122. package/build/v1/offers/schemas/admin-offer-campaign-sort.enum.d.ts +6 -0
  123. package/build/v1/offers/schemas/admin-offer-campaign-sort.enum.js +11 -0
  124. package/build/v1/offers/schemas/admin-offer-campaign-sort.enum.js.map +1 -0
  125. package/build/v1/offers/schemas/guest-offer-banner.schema.d.ts +30 -0
  126. package/build/v1/offers/schemas/guest-offer-banner.schema.js +21 -0
  127. package/build/v1/offers/schemas/guest-offer-banner.schema.js.map +1 -0
  128. package/build/v1/offers/schemas/index.d.ts +18 -0
  129. package/build/v1/offers/schemas/index.js +39 -0
  130. package/build/v1/offers/schemas/index.js.map +1 -0
  131. package/build/v1/offers/schemas/offer-audience.schema.d.ts +7 -0
  132. package/build/v1/offers/schemas/offer-audience.schema.js +18 -0
  133. package/build/v1/offers/schemas/offer-audience.schema.js.map +1 -0
  134. package/build/v1/offers/schemas/offer-campaign-stats.schema.d.ts +14 -0
  135. package/build/v1/offers/schemas/offer-campaign-stats.schema.js +17 -0
  136. package/build/v1/offers/schemas/offer-campaign-stats.schema.js.map +1 -0
  137. package/build/v1/offers/schemas/offer-campaign-status.enum.d.ts +5 -0
  138. package/build/v1/offers/schemas/offer-campaign-status.enum.js +10 -0
  139. package/build/v1/offers/schemas/offer-campaign-status.enum.js.map +1 -0
  140. package/build/v1/offers/schemas/offer-campaign.schema.d.ts +268 -0
  141. package/build/v1/offers/schemas/offer-campaign.schema.js +248 -0
  142. package/build/v1/offers/schemas/offer-campaign.schema.js.map +1 -0
  143. package/build/v1/offers/schemas/offer-countdown-mode.enum.d.ts +5 -0
  144. package/build/v1/offers/schemas/offer-countdown-mode.enum.js +10 -0
  145. package/build/v1/offers/schemas/offer-countdown-mode.enum.js.map +1 -0
  146. package/build/v1/offers/schemas/offer-cta-action.enum.d.ts +4 -0
  147. package/build/v1/offers/schemas/offer-cta-action.enum.js +9 -0
  148. package/build/v1/offers/schemas/offer-cta-action.enum.js.map +1 -0
  149. package/build/v1/offers/schemas/offer-presentation.schema.d.ts +47 -0
  150. package/build/v1/offers/schemas/offer-presentation.schema.js +97 -0
  151. package/build/v1/offers/schemas/offer-presentation.schema.js.map +1 -0
  152. package/build/v1/offers/schemas/offer-promo-template.schema.d.ts +28 -0
  153. package/build/v1/offers/schemas/offer-promo-template.schema.js +44 -0
  154. package/build/v1/offers/schemas/offer-promo-template.schema.js.map +1 -0
  155. package/build/v1/offers/schemas/offer-trigger-type.enum.d.ts +5 -0
  156. package/build/v1/offers/schemas/offer-trigger-type.enum.js +10 -0
  157. package/build/v1/offers/schemas/offer-trigger-type.enum.js.map +1 -0
  158. package/build/v1/offers/schemas/unreg-track-header-offer-request.schema.d.ts +5 -0
  159. package/build/v1/offers/schemas/unreg-track-header-offer-request.schema.js +11 -0
  160. package/build/v1/offers/schemas/unreg-track-header-offer-request.schema.js.map +1 -0
  161. package/build/v1/offers/schemas/user-offer-event-type.enum.d.ts +6 -0
  162. package/build/v1/offers/schemas/user-offer-event-type.enum.js +11 -0
  163. package/build/v1/offers/schemas/user-offer-event-type.enum.js.map +1 -0
  164. package/build/v1/offers/schemas/user-offer-status.enum.d.ts +9 -0
  165. package/build/v1/offers/schemas/user-offer-status.enum.js +14 -0
  166. package/build/v1/offers/schemas/user-offer-status.enum.js.map +1 -0
  167. package/build/v1/offers/schemas/user-offer.schema.d.ts +41 -0
  168. package/build/v1/offers/schemas/user-offer.schema.js +28 -0
  169. package/build/v1/offers/schemas/user-offer.schema.js.map +1 -0
  170. package/build/v1/web-notifications/commands/dismiss-web-notification.command.d.ts +12 -0
  171. package/build/v1/web-notifications/commands/dismiss-web-notification.command.js +15 -0
  172. package/build/v1/web-notifications/commands/dismiss-web-notification.command.js.map +1 -0
  173. package/build/v1/web-notifications/commands/index.d.ts +3 -0
  174. package/build/v1/web-notifications/commands/index.js +3 -0
  175. package/build/v1/web-notifications/commands/index.js.map +1 -1
  176. package/build/v1/web-notifications/commands/track-web-notification-click.command.d.ts +12 -0
  177. package/build/v1/web-notifications/commands/track-web-notification-click.command.js +15 -0
  178. package/build/v1/web-notifications/commands/track-web-notification-click.command.js.map +1 -0
  179. package/build/v1/web-notifications/commands/track-web-notification-impression.command.d.ts +12 -0
  180. package/build/v1/web-notifications/commands/track-web-notification-impression.command.js +15 -0
  181. package/build/v1/web-notifications/commands/track-web-notification-impression.command.js.map +1 -0
  182. package/build/v1/web-notifications/queries/get-web-notifications.query.d.ts +6 -0
  183. package/build/v1/web-notifications/queries/get-web-unread-count.query.d.ts +2 -0
  184. package/build/v1/web-notifications/schemas/dismiss-web-notification-response.schema.d.ts +5 -0
  185. package/build/v1/web-notifications/schemas/dismiss-web-notification-response.schema.js +8 -0
  186. package/build/v1/web-notifications/schemas/dismiss-web-notification-response.schema.js.map +1 -0
  187. package/build/v1/web-notifications/schemas/get-web-notifications-query.schema.d.ts +4 -0
  188. package/build/v1/web-notifications/schemas/get-web-notifications-query.schema.js +20 -0
  189. package/build/v1/web-notifications/schemas/get-web-notifications-query.schema.js.map +1 -1
  190. package/build/v1/web-notifications/schemas/index.d.ts +2 -0
  191. package/build/v1/web-notifications/schemas/index.js +2 -0
  192. package/build/v1/web-notifications/schemas/index.js.map +1 -1
  193. package/build/v1/web-notifications/schemas/track-web-notification-engagement-response.schema.d.ts +5 -0
  194. package/build/v1/web-notifications/schemas/track-web-notification-engagement-response.schema.js +8 -0
  195. package/build/v1/web-notifications/schemas/track-web-notification-engagement-response.schema.js.map +1 -0
  196. package/build/v1/web-notifications/schemas/web-notification.schema.d.ts +4 -0
  197. package/build/v1/web-notifications/schemas/web-notification.schema.js +4 -0
  198. package/build/v1/web-notifications/schemas/web-notification.schema.js.map +1 -1
  199. package/build/v1/web-notifications/schemas/web-notifications-response.schema.d.ts +4 -0
  200. package/build/v1/web-notifications/schemas/web-unread-count-response.schema.d.ts +3 -0
  201. package/build/v1/web-notifications/schemas/web-unread-count-response.schema.js +3 -0
  202. package/build/v1/web-notifications/schemas/web-unread-count-response.schema.js.map +1 -1
  203. package/build-esm/.tsbuildinfo +1 -1
  204. package/build-esm/controllers/index.js +3 -1
  205. package/build-esm/controllers/index.js.map +1 -1
  206. package/build-esm/controllers/notifications.controllers.js +1 -0
  207. package/build-esm/controllers/notifications.controllers.js.map +1 -1
  208. package/build-esm/controllers/offers-unreg.controllers.js +2 -0
  209. package/build-esm/controllers/offers-unreg.controllers.js.map +1 -0
  210. package/build-esm/controllers/offers.controllers.js +2 -0
  211. package/build-esm/controllers/offers.controllers.js.map +1 -0
  212. package/build-esm/locales/validation.js +340 -0
  213. package/build-esm/locales/validation.js.map +1 -1
  214. package/build-esm/rest-api.js +26 -2
  215. package/build-esm/rest-api.js.map +1 -1
  216. package/build-esm/routes/index.js +3 -1
  217. package/build-esm/routes/index.js.map +1 -1
  218. package/build-esm/routes/notifications.routes.js +3 -0
  219. package/build-esm/routes/notifications.routes.js.map +1 -1
  220. package/build-esm/routes/offers.routes.js +17 -0
  221. package/build-esm/routes/offers.routes.js.map +1 -0
  222. package/build-esm/routes/web-notifications.routes.js +3 -0
  223. package/build-esm/routes/web-notifications.routes.js.map +1 -1
  224. package/build-esm/shared/frontend-routes.js +7 -0
  225. package/build-esm/shared/frontend-routes.js.map +1 -1
  226. package/build-esm/shared/regex.js +1 -0
  227. package/build-esm/shared/regex.js.map +1 -1
  228. package/build-esm/v1/ai/ai.errors.js +5 -0
  229. package/build-esm/v1/ai/ai.errors.js.map +1 -1
  230. package/build-esm/v1/attribution/schemas/conversion-type.enum.js +5 -0
  231. package/build-esm/v1/attribution/schemas/conversion-type.enum.js.map +1 -1
  232. package/build-esm/v1/engagement/schemas/lifecycle-campaign.enum.js +0 -6
  233. package/build-esm/v1/engagement/schemas/lifecycle-campaign.enum.js.map +1 -1
  234. package/build-esm/v1/engagement/schemas/lifecycle-stage.enum.js +3 -0
  235. package/build-esm/v1/engagement/schemas/lifecycle-stage.enum.js.map +1 -1
  236. package/build-esm/v1/engagement/schemas/suppression-channel.enum.js +2 -0
  237. package/build-esm/v1/engagement/schemas/suppression-channel.enum.js.map +1 -1
  238. package/build-esm/v1/index.js +1 -0
  239. package/build-esm/v1/index.js.map +1 -1
  240. package/build-esm/v1/notifications/schemas/email-template.enum.js +1 -7
  241. package/build-esm/v1/notifications/schemas/email-template.enum.js.map +1 -1
  242. package/build-esm/v1/notifications/schemas/index.js +1 -0
  243. package/build-esm/v1/notifications/schemas/index.js.map +1 -1
  244. package/build-esm/v1/notifications/schemas/notification-channel.enum.js +2 -0
  245. package/build-esm/v1/notifications/schemas/notification-channel.enum.js.map +1 -1
  246. package/build-esm/v1/notifications/schemas/notification-job-status.enum.js +1 -0
  247. package/build-esm/v1/notifications/schemas/notification-job-status.enum.js.map +1 -1
  248. package/build-esm/v1/notifications/schemas/unsubscribe-params.schema.js +13 -0
  249. package/build-esm/v1/notifications/schemas/unsubscribe-params.schema.js.map +1 -0
  250. package/build-esm/v1/offers/commands/admin-create-offer-campaign.command.js +11 -0
  251. package/build-esm/v1/offers/commands/admin-create-offer-campaign.command.js.map +1 -0
  252. package/build-esm/v1/offers/commands/admin-delete-offer-campaign.command.js +12 -0
  253. package/build-esm/v1/offers/commands/admin-delete-offer-campaign.command.js.map +1 -0
  254. package/build-esm/v1/offers/commands/admin-issue-offer-campaign.command.js +11 -0
  255. package/build-esm/v1/offers/commands/admin-issue-offer-campaign.command.js.map +1 -0
  256. package/build-esm/v1/offers/commands/admin-revoke-offer-campaign.command.js +12 -0
  257. package/build-esm/v1/offers/commands/admin-revoke-offer-campaign.command.js.map +1 -0
  258. package/build-esm/v1/offers/commands/admin-update-offer-campaign.command.js +11 -0
  259. package/build-esm/v1/offers/commands/admin-update-offer-campaign.command.js.map +1 -0
  260. package/build-esm/v1/offers/commands/index.js +7 -0
  261. package/build-esm/v1/offers/commands/index.js.map +1 -0
  262. package/build-esm/v1/offers/commands/unreg-track-header-offer.command.js +12 -0
  263. package/build-esm/v1/offers/commands/unreg-track-header-offer.command.js.map +1 -0
  264. package/build-esm/v1/offers/index.js +7 -0
  265. package/build-esm/v1/offers/index.js.map +1 -0
  266. package/build-esm/v1/offers/offers.errors.js +51 -0
  267. package/build-esm/v1/offers/offers.errors.js.map +1 -0
  268. package/build-esm/v1/offers/queries/admin-get-offer-campaign-by-id.query.js +12 -0
  269. package/build-esm/v1/offers/queries/admin-get-offer-campaign-by-id.query.js.map +1 -0
  270. package/build-esm/v1/offers/queries/admin-get-offer-campaign-stats.query.js +12 -0
  271. package/build-esm/v1/offers/queries/admin-get-offer-campaign-stats.query.js.map +1 -0
  272. package/build-esm/v1/offers/queries/admin-list-offer-campaigns.query.js +11 -0
  273. package/build-esm/v1/offers/queries/admin-list-offer-campaigns.query.js.map +1 -0
  274. package/build-esm/v1/offers/queries/admin-list-user-offers.query.js +11 -0
  275. package/build-esm/v1/offers/queries/admin-list-user-offers.query.js.map +1 -0
  276. package/build-esm/v1/offers/queries/index.js +6 -0
  277. package/build-esm/v1/offers/queries/index.js.map +1 -0
  278. package/build-esm/v1/offers/queries/unreg-get-header-offer.query.js +12 -0
  279. package/build-esm/v1/offers/queries/unreg-get-header-offer.query.js.map +1 -0
  280. package/build-esm/v1/offers/schemas/admin-list-offer-campaigns-filters.schema.js +42 -0
  281. package/build-esm/v1/offers/schemas/admin-list-offer-campaigns-filters.schema.js.map +1 -0
  282. package/build-esm/v1/offers/schemas/admin-list-user-offers-filters.schema.js +22 -0
  283. package/build-esm/v1/offers/schemas/admin-list-user-offers-filters.schema.js.map +1 -0
  284. package/build-esm/v1/offers/schemas/admin-offer-campaign-sort.enum.js +8 -0
  285. package/build-esm/v1/offers/schemas/admin-offer-campaign-sort.enum.js.map +1 -0
  286. package/build-esm/v1/offers/schemas/guest-offer-banner.schema.js +18 -0
  287. package/build-esm/v1/offers/schemas/guest-offer-banner.schema.js.map +1 -0
  288. package/build-esm/v1/offers/schemas/index.js +18 -0
  289. package/build-esm/v1/offers/schemas/index.js.map +1 -0
  290. package/build-esm/v1/offers/schemas/offer-audience.schema.js +15 -0
  291. package/build-esm/v1/offers/schemas/offer-audience.schema.js.map +1 -0
  292. package/build-esm/v1/offers/schemas/offer-campaign-stats.schema.js +14 -0
  293. package/build-esm/v1/offers/schemas/offer-campaign-stats.schema.js.map +1 -0
  294. package/build-esm/v1/offers/schemas/offer-campaign-status.enum.js +7 -0
  295. package/build-esm/v1/offers/schemas/offer-campaign-status.enum.js.map +1 -0
  296. package/build-esm/v1/offers/schemas/offer-campaign.schema.js +245 -0
  297. package/build-esm/v1/offers/schemas/offer-campaign.schema.js.map +1 -0
  298. package/build-esm/v1/offers/schemas/offer-countdown-mode.enum.js +7 -0
  299. package/build-esm/v1/offers/schemas/offer-countdown-mode.enum.js.map +1 -0
  300. package/build-esm/v1/offers/schemas/offer-cta-action.enum.js +6 -0
  301. package/build-esm/v1/offers/schemas/offer-cta-action.enum.js.map +1 -0
  302. package/build-esm/v1/offers/schemas/offer-presentation.schema.js +94 -0
  303. package/build-esm/v1/offers/schemas/offer-presentation.schema.js.map +1 -0
  304. package/build-esm/v1/offers/schemas/offer-promo-template.schema.js +41 -0
  305. package/build-esm/v1/offers/schemas/offer-promo-template.schema.js.map +1 -0
  306. package/build-esm/v1/offers/schemas/offer-trigger-type.enum.js +7 -0
  307. package/build-esm/v1/offers/schemas/offer-trigger-type.enum.js.map +1 -0
  308. package/build-esm/v1/offers/schemas/unreg-track-header-offer-request.schema.js +8 -0
  309. package/build-esm/v1/offers/schemas/unreg-track-header-offer-request.schema.js.map +1 -0
  310. package/build-esm/v1/offers/schemas/user-offer-event-type.enum.js +8 -0
  311. package/build-esm/v1/offers/schemas/user-offer-event-type.enum.js.map +1 -0
  312. package/build-esm/v1/offers/schemas/user-offer-status.enum.js +11 -0
  313. package/build-esm/v1/offers/schemas/user-offer-status.enum.js.map +1 -0
  314. package/build-esm/v1/offers/schemas/user-offer.schema.js +25 -0
  315. package/build-esm/v1/offers/schemas/user-offer.schema.js.map +1 -0
  316. package/build-esm/v1/web-notifications/commands/dismiss-web-notification.command.js +12 -0
  317. package/build-esm/v1/web-notifications/commands/dismiss-web-notification.command.js.map +1 -0
  318. package/build-esm/v1/web-notifications/commands/index.js +3 -0
  319. package/build-esm/v1/web-notifications/commands/index.js.map +1 -1
  320. package/build-esm/v1/web-notifications/commands/track-web-notification-click.command.js +12 -0
  321. package/build-esm/v1/web-notifications/commands/track-web-notification-click.command.js.map +1 -0
  322. package/build-esm/v1/web-notifications/commands/track-web-notification-impression.command.js +12 -0
  323. package/build-esm/v1/web-notifications/commands/track-web-notification-impression.command.js.map +1 -0
  324. package/build-esm/v1/web-notifications/schemas/dismiss-web-notification-response.schema.js +5 -0
  325. package/build-esm/v1/web-notifications/schemas/dismiss-web-notification-response.schema.js.map +1 -0
  326. package/build-esm/v1/web-notifications/schemas/get-web-notifications-query.schema.js +20 -0
  327. package/build-esm/v1/web-notifications/schemas/get-web-notifications-query.schema.js.map +1 -1
  328. package/build-esm/v1/web-notifications/schemas/index.js +2 -0
  329. package/build-esm/v1/web-notifications/schemas/index.js.map +1 -1
  330. package/build-esm/v1/web-notifications/schemas/track-web-notification-engagement-response.schema.js +5 -0
  331. package/build-esm/v1/web-notifications/schemas/track-web-notification-engagement-response.schema.js.map +1 -0
  332. package/build-esm/v1/web-notifications/schemas/web-notification.schema.js +4 -0
  333. package/build-esm/v1/web-notifications/schemas/web-notification.schema.js.map +1 -1
  334. package/build-esm/v1/web-notifications/schemas/web-unread-count-response.schema.js +3 -0
  335. package/build-esm/v1/web-notifications/schemas/web-unread-count-response.schema.js.map +1 -1
  336. package/package.json +1 -1
@@ -0,0 +1,245 @@
1
+ import { z } from 'zod';
2
+ import { UUID_REGEX, BIGINT_STRING_REGEX } from '../../../shared';
3
+ import { NotificationChannel } from '../../notifications/schemas/notification-channel.enum';
4
+ import { OfferCampaignStatus } from './offer-campaign-status.enum';
5
+ import { OfferTriggerType } from './offer-trigger-type.enum';
6
+ import { OfferAudienceSchema } from './offer-audience.schema';
7
+ import { OfferPromoTemplateSchema } from './offer-promo-template.schema';
8
+ import { OfferPresentationSchema } from './offer-presentation.schema';
9
+ export const OFFER_CAMPAIGN_DEFAULT_CHANNELS = [NotificationChannel.WEB];
10
+ export const OFFER_CAMPAIGN_KEY_MAX_LENGTH = 64;
11
+ export const OFFER_CAMPAIGN_NAME_MAX_LENGTH = 120;
12
+ export const OfferCampaignSchema = z.object({
13
+ id: z.string().regex(UUID_REGEX),
14
+ key: z.string(),
15
+ name: z.string(),
16
+ status: z.nativeEnum(OfferCampaignStatus),
17
+ priority: z.number().int(),
18
+ triggerType: z.nativeEnum(OfferTriggerType),
19
+ triggerDelayMs: z.string(),
20
+ audience: OfferAudienceSchema,
21
+ offerTtlMs: z.string(),
22
+ promoTemplate: OfferPromoTemplateSchema.nullable(),
23
+ promoTtlMs: z.string().nullable(),
24
+ presentation: OfferPresentationSchema,
25
+ channels: z.array(z.nativeEnum(NotificationChannel)),
26
+ maxPerUser: z.number().int().positive(),
27
+ cooldownMs: z.string().nullable(),
28
+ globalCap: z.number().int().positive().nullable(),
29
+ issuedCount: z.number().int().nonnegative(),
30
+ campaignStartsAt: z.string().datetime({ offset: true }).nullable(),
31
+ campaignEndsAt: z.string().datetime({ offset: true }).nullable(),
32
+ createdBy: z.string().regex(UUID_REGEX).nullable(),
33
+ createdAt: z.string().datetime({ offset: true }),
34
+ updatedAt: z.string().datetime({ offset: true }),
35
+ });
36
+ export const OfferCampaignListResponseSchema = z.object({
37
+ items: z.array(OfferCampaignSchema),
38
+ total: z.number().int().nonnegative(),
39
+ });
40
+ export const AdminCreateOfferCampaignRequestSchema = z
41
+ .object({
42
+ key: z
43
+ .string({ error: 'AdminCreateOfferCampaignRequest.key.required' })
44
+ .min(1, { message: 'AdminCreateOfferCampaignRequest.key.min' })
45
+ .max(OFFER_CAMPAIGN_KEY_MAX_LENGTH, { message: 'AdminCreateOfferCampaignRequest.key.max' }),
46
+ name: z
47
+ .string({ error: 'AdminCreateOfferCampaignRequest.name.required' })
48
+ .min(1, { message: 'AdminCreateOfferCampaignRequest.name.min' })
49
+ .max(OFFER_CAMPAIGN_NAME_MAX_LENGTH, { message: 'AdminCreateOfferCampaignRequest.name.max' }),
50
+ status: z
51
+ .nativeEnum(OfferCampaignStatus, { error: 'AdminCreateOfferCampaignRequest.status.invalid' })
52
+ .default(OfferCampaignStatus.ACTIVE),
53
+ priority: z
54
+ .number({ error: 'AdminCreateOfferCampaignRequest.priority.invalid' })
55
+ .int({ message: 'AdminCreateOfferCampaignRequest.priority.invalid' })
56
+ .default(0),
57
+ triggerType: z.nativeEnum(OfferTriggerType, {
58
+ error: 'AdminCreateOfferCampaignRequest.triggerType.invalid',
59
+ }),
60
+ triggerDelayMs: z
61
+ .string({ error: 'AdminCreateOfferCampaignRequest.triggerDelayMs.invalid' })
62
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminCreateOfferCampaignRequest.triggerDelayMs.invalid' })
63
+ .default('0'),
64
+ audience: OfferAudienceSchema.default({}),
65
+ offerTtlMs: z
66
+ .string({ error: 'AdminCreateOfferCampaignRequest.offerTtlMs.required' })
67
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminCreateOfferCampaignRequest.offerTtlMs.invalid' }),
68
+ promoTemplate: OfferPromoTemplateSchema.nullable().optional().default(null),
69
+ promoTtlMs: z
70
+ .string({ error: 'AdminCreateOfferCampaignRequest.promoTtlMs.invalid' })
71
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminCreateOfferCampaignRequest.promoTtlMs.invalid' })
72
+ .nullable()
73
+ .optional()
74
+ .default(null),
75
+ presentation: OfferPresentationSchema,
76
+ channels: z
77
+ .array(z.nativeEnum(NotificationChannel, {
78
+ error: 'AdminCreateOfferCampaignRequest.channels.invalid',
79
+ }))
80
+ .min(1, { message: 'AdminCreateOfferCampaignRequest.channels.min' })
81
+ .default([...OFFER_CAMPAIGN_DEFAULT_CHANNELS]),
82
+ maxPerUser: z
83
+ .number({ error: 'AdminCreateOfferCampaignRequest.maxPerUser.invalid' })
84
+ .int({ message: 'AdminCreateOfferCampaignRequest.maxPerUser.invalid' })
85
+ .positive({ message: 'AdminCreateOfferCampaignRequest.maxPerUser.min' })
86
+ .default(1),
87
+ cooldownMs: z
88
+ .string({ error: 'AdminCreateOfferCampaignRequest.cooldownMs.invalid' })
89
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminCreateOfferCampaignRequest.cooldownMs.invalid' })
90
+ .nullable()
91
+ .optional()
92
+ .default(null),
93
+ globalCap: z
94
+ .number({ error: 'AdminCreateOfferCampaignRequest.globalCap.invalid' })
95
+ .int({ message: 'AdminCreateOfferCampaignRequest.globalCap.invalid' })
96
+ .positive({ message: 'AdminCreateOfferCampaignRequest.globalCap.min' })
97
+ .nullable()
98
+ .optional()
99
+ .default(null),
100
+ campaignStartsAt: z
101
+ .string({ error: 'AdminCreateOfferCampaignRequest.campaignStartsAt.invalid' })
102
+ .datetime({ message: 'AdminCreateOfferCampaignRequest.campaignStartsAt.invalid' })
103
+ .nullable()
104
+ .optional()
105
+ .default(null),
106
+ campaignEndsAt: z
107
+ .string({ error: 'AdminCreateOfferCampaignRequest.campaignEndsAt.invalid' })
108
+ .datetime({ message: 'AdminCreateOfferCampaignRequest.campaignEndsAt.invalid' })
109
+ .nullable()
110
+ .optional()
111
+ .default(null),
112
+ })
113
+ .refine((v) => (v.promoTemplate === null) === (v.promoTtlMs === null), {
114
+ message: 'AdminCreateOfferCampaignRequest.promoTtlMs.mustPairWithPromoTemplate',
115
+ path: ['promoTtlMs'],
116
+ })
117
+ .refine((v) => {
118
+ if (v.promoTtlMs === null)
119
+ return true;
120
+ return BigInt(v.promoTtlMs) >= BigInt(v.offerTtlMs);
121
+ }, {
122
+ message: 'AdminCreateOfferCampaignRequest.promoTtlMs.mustCoverOfferTtl',
123
+ path: ['promoTtlMs'],
124
+ })
125
+ .refine((v) => {
126
+ if (v.campaignStartsAt === null || v.campaignEndsAt === null)
127
+ return true;
128
+ return new Date(v.campaignStartsAt).getTime() <= new Date(v.campaignEndsAt).getTime();
129
+ }, {
130
+ message: 'AdminCreateOfferCampaignRequest.campaignEndsAt.mustBeAfterStart',
131
+ path: ['campaignEndsAt'],
132
+ });
133
+ export const AdminUpdateOfferCampaignRequestSchema = z
134
+ .object({
135
+ name: z
136
+ .string()
137
+ .min(1, { message: 'AdminUpdateOfferCampaignRequest.name.min' })
138
+ .max(OFFER_CAMPAIGN_NAME_MAX_LENGTH, { message: 'AdminUpdateOfferCampaignRequest.name.max' })
139
+ .optional(),
140
+ status: z
141
+ .nativeEnum(OfferCampaignStatus, { error: 'AdminUpdateOfferCampaignRequest.status.invalid' })
142
+ .optional(),
143
+ priority: z
144
+ .number({ error: 'AdminUpdateOfferCampaignRequest.priority.invalid' })
145
+ .int({ message: 'AdminUpdateOfferCampaignRequest.priority.invalid' })
146
+ .optional(),
147
+ triggerType: z
148
+ .nativeEnum(OfferTriggerType, { error: 'AdminUpdateOfferCampaignRequest.triggerType.invalid' })
149
+ .optional(),
150
+ triggerDelayMs: z
151
+ .string({ error: 'AdminUpdateOfferCampaignRequest.triggerDelayMs.invalid' })
152
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminUpdateOfferCampaignRequest.triggerDelayMs.invalid' })
153
+ .optional(),
154
+ audience: OfferAudienceSchema.optional(),
155
+ offerTtlMs: z
156
+ .string({ error: 'AdminUpdateOfferCampaignRequest.offerTtlMs.invalid' })
157
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminUpdateOfferCampaignRequest.offerTtlMs.invalid' })
158
+ .optional(),
159
+ promoTemplate: OfferPromoTemplateSchema.nullable().optional(),
160
+ promoTtlMs: z
161
+ .string({ error: 'AdminUpdateOfferCampaignRequest.promoTtlMs.invalid' })
162
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminUpdateOfferCampaignRequest.promoTtlMs.invalid' })
163
+ .nullable()
164
+ .optional(),
165
+ presentation: OfferPresentationSchema.optional(),
166
+ channels: z
167
+ .array(z.nativeEnum(NotificationChannel, {
168
+ error: 'AdminUpdateOfferCampaignRequest.channels.invalid',
169
+ }))
170
+ .min(1, { message: 'AdminUpdateOfferCampaignRequest.channels.min' })
171
+ .optional(),
172
+ maxPerUser: z
173
+ .number({ error: 'AdminUpdateOfferCampaignRequest.maxPerUser.invalid' })
174
+ .int({ message: 'AdminUpdateOfferCampaignRequest.maxPerUser.invalid' })
175
+ .positive({ message: 'AdminUpdateOfferCampaignRequest.maxPerUser.min' })
176
+ .optional(),
177
+ cooldownMs: z
178
+ .string({ error: 'AdminUpdateOfferCampaignRequest.cooldownMs.invalid' })
179
+ .regex(BIGINT_STRING_REGEX, { message: 'AdminUpdateOfferCampaignRequest.cooldownMs.invalid' })
180
+ .nullable()
181
+ .optional(),
182
+ globalCap: z
183
+ .number({ error: 'AdminUpdateOfferCampaignRequest.globalCap.invalid' })
184
+ .int({ message: 'AdminUpdateOfferCampaignRequest.globalCap.invalid' })
185
+ .positive({ message: 'AdminUpdateOfferCampaignRequest.globalCap.min' })
186
+ .nullable()
187
+ .optional(),
188
+ campaignStartsAt: z
189
+ .string({ error: 'AdminUpdateOfferCampaignRequest.campaignStartsAt.invalid' })
190
+ .datetime({ message: 'AdminUpdateOfferCampaignRequest.campaignStartsAt.invalid' })
191
+ .nullable()
192
+ .optional(),
193
+ campaignEndsAt: z
194
+ .string({ error: 'AdminUpdateOfferCampaignRequest.campaignEndsAt.invalid' })
195
+ .datetime({ message: 'AdminUpdateOfferCampaignRequest.campaignEndsAt.invalid' })
196
+ .nullable()
197
+ .optional(),
198
+ })
199
+ .refine((v) => {
200
+ if (v.promoTemplate === undefined || v.promoTtlMs === undefined)
201
+ return true;
202
+ return (v.promoTemplate === null) === (v.promoTtlMs === null);
203
+ }, {
204
+ message: 'AdminUpdateOfferCampaignRequest.promoTtlMs.mustPairWithPromoTemplate',
205
+ path: ['promoTtlMs'],
206
+ })
207
+ .refine((v) => {
208
+ if (v.promoTtlMs === undefined || v.promoTtlMs === null || v.offerTtlMs === undefined)
209
+ return true;
210
+ return BigInt(v.promoTtlMs) >= BigInt(v.offerTtlMs);
211
+ }, {
212
+ message: 'AdminUpdateOfferCampaignRequest.promoTtlMs.mustCoverOfferTtl',
213
+ path: ['promoTtlMs'],
214
+ })
215
+ .refine((v) => {
216
+ if (v.campaignStartsAt === undefined || v.campaignEndsAt === undefined)
217
+ return true;
218
+ if (v.campaignStartsAt === null || v.campaignEndsAt === null)
219
+ return true;
220
+ return new Date(v.campaignStartsAt).getTime() <= new Date(v.campaignEndsAt).getTime();
221
+ }, {
222
+ message: 'AdminUpdateOfferCampaignRequest.campaignEndsAt.mustBeAfterStart',
223
+ path: ['campaignEndsAt'],
224
+ });
225
+ export const AdminDeleteOfferCampaignResponseSchema = z.object({
226
+ id: z.string().regex(UUID_REGEX),
227
+ });
228
+ export const AdminIssueOfferCampaignRequestSchema = z.object({
229
+ userIds: z
230
+ .array(z.string().regex(UUID_REGEX, { message: 'AdminIssueOfferCampaignRequest.userIds.invalid' }))
231
+ .min(1, { message: 'AdminIssueOfferCampaignRequest.userIds.min' })
232
+ .max(1000, { message: 'AdminIssueOfferCampaignRequest.userIds.max' }),
233
+ });
234
+ export const AdminIssueOfferCampaignResponseSchema = z.object({
235
+ issued: z.number().int().nonnegative(),
236
+ skipped: z.number().int().nonnegative(),
237
+ });
238
+ export const AdminRevokeOfferCampaignResponseSchema = z.object({
239
+ id: z.string().regex(UUID_REGEX),
240
+ cancelledOffers: z.number().int().nonnegative(),
241
+ disabledPromoCodes: z.number().int().nonnegative(),
242
+ cancelledJobs: z.number().int().nonnegative(),
243
+ hiddenCards: z.number().int().nonnegative(),
244
+ });
245
+ //# sourceMappingURL=offer-campaign.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-campaign.schema.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/offer-campaign.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export var OfferCountdownMode;
2
+ (function (OfferCountdownMode) {
3
+ OfferCountdownMode["NONE"] = "NONE";
4
+ OfferCountdownMode["OFFER_EXPIRES_AT"] = "OFFER_EXPIRES_AT";
5
+ OfferCountdownMode["WEEKLY_SUNDAY"] = "WEEKLY_SUNDAY";
6
+ })(OfferCountdownMode || (OfferCountdownMode = {}));
7
+ //# sourceMappingURL=offer-countdown-mode.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-countdown-mode.enum.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/offer-countdown-mode.enum.ts"],"names":[],"mappings":"AAOA,MAAM,CAAN,IAAY,kBAUX;AAVD,WAAY,kBAAkB;IAE1B,mCAAa,CAAA;IAEb,2DAAqC,CAAA;IAKrC,qDAA+B,CAAA;AACnC,CAAC,EAVW,kBAAkB,KAAlB,kBAAkB,QAU7B"}
@@ -0,0 +1,6 @@
1
+ export var OfferCtaAction;
2
+ (function (OfferCtaAction) {
3
+ OfferCtaAction["OPEN_PLANS"] = "OPEN_PLANS";
4
+ OfferCtaAction["OPEN_URL"] = "OPEN_URL";
5
+ })(OfferCtaAction || (OfferCtaAction = {}));
6
+ //# sourceMappingURL=offer-cta-action.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-cta-action.enum.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/offer-cta-action.enum.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,2CAAyB,CAAA;IACzB,uCAAqB,CAAA;AACzB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB"}
@@ -0,0 +1,94 @@
1
+ import { z } from 'zod';
2
+ import { OfferCtaAction } from './offer-cta-action.enum';
3
+ import { OfferCountdownMode } from './offer-countdown-mode.enum';
4
+ const OFFER_CTA_URL_ALLOWED_PROTOCOLS = new Set(['http:', 'https:']);
5
+ function isHttpOrHttpsUrl(value) {
6
+ try {
7
+ return OFFER_CTA_URL_ALLOWED_PROTOCOLS.has(new URL(value).protocol);
8
+ }
9
+ catch {
10
+ return false;
11
+ }
12
+ }
13
+ export const OfferPresentationCtaSchema = z
14
+ .object({
15
+ label: z
16
+ .string({ error: 'OfferPresentation.cta.label.required' })
17
+ .min(1, { message: 'OfferPresentation.cta.label.min' })
18
+ .max(60, { message: 'OfferPresentation.cta.label.max' }),
19
+ action: z.nativeEnum(OfferCtaAction, { error: 'OfferPresentation.cta.action.invalid' }),
20
+ url: z
21
+ .string({ error: 'OfferPresentation.cta.url.invalid' })
22
+ .url({ message: 'OfferPresentation.cta.url.invalid' })
23
+ .refine(isHttpOrHttpsUrl, { message: 'OfferPresentation.cta.url.protocolNotAllowed' })
24
+ .optional(),
25
+ })
26
+ .superRefine((v, ctx) => {
27
+ if (v.action === OfferCtaAction.OPEN_URL && (v.url === undefined || v.url.length === 0)) {
28
+ ctx.addIssue({
29
+ code: z.ZodIssueCode.custom,
30
+ message: 'OfferPresentation.cta.url.requiredForOpenUrl',
31
+ path: ['url'],
32
+ });
33
+ }
34
+ });
35
+ export const OFFER_MAX_FOLLOW_UPS = 4;
36
+ export const OfferFollowUpSchema = z.object({
37
+ delayMs: z
38
+ .number({ error: 'OfferFollowUp.delayMs.required' })
39
+ .int({ message: 'OfferFollowUp.delayMs.int' })
40
+ .positive({ message: 'OfferFollowUp.delayMs.positive' }),
41
+ title: z
42
+ .string({ error: 'OfferFollowUp.title.required' })
43
+ .min(1, { message: 'OfferFollowUp.title.min' })
44
+ .max(200, { message: 'OfferFollowUp.title.max' }),
45
+ highlight: z
46
+ .string({ error: 'OfferFollowUp.highlight.invalid' })
47
+ .min(1, { message: 'OfferFollowUp.highlight.min' })
48
+ .max(120, { message: 'OfferFollowUp.highlight.max' })
49
+ .optional(),
50
+ cta: OfferPresentationCtaSchema,
51
+ });
52
+ export const OfferPresentationSchema = z.object({
53
+ variant: z
54
+ .string({ error: 'OfferPresentation.variant.required' })
55
+ .min(1, { message: 'OfferPresentation.variant.min' })
56
+ .max(40, { message: 'OfferPresentation.variant.max' }),
57
+ badge: z
58
+ .string({ error: 'OfferPresentation.badge.invalid' })
59
+ .min(1, { message: 'OfferPresentation.badge.min' })
60
+ .max(80, { message: 'OfferPresentation.badge.max' })
61
+ .optional(),
62
+ title: z
63
+ .string({ error: 'OfferPresentation.title.required' })
64
+ .min(1, { message: 'OfferPresentation.title.min' })
65
+ .max(200, { message: 'OfferPresentation.title.max' }),
66
+ highlight: z
67
+ .string({ error: 'OfferPresentation.highlight.invalid' })
68
+ .min(1, { message: 'OfferPresentation.highlight.min' })
69
+ .max(120, { message: 'OfferPresentation.highlight.max' })
70
+ .optional(),
71
+ cta: OfferPresentationCtaSchema,
72
+ dismissible: z.boolean({ error: 'OfferPresentation.dismissible.invalid' }),
73
+ imageUrl: z
74
+ .string({ error: 'OfferPresentation.imageUrl.invalid' })
75
+ .url({ message: 'OfferPresentation.imageUrl.invalid' })
76
+ .max(2048, { message: 'OfferPresentation.imageUrl.max' })
77
+ .refine((value) => /^https?:\/\//.test(value), {
78
+ message: 'OfferPresentation.imageUrl.protocolNotAllowed',
79
+ })
80
+ .optional(),
81
+ emailAsset: z
82
+ .string({ error: 'OfferPresentation.emailAsset.invalid' })
83
+ .min(1, { message: 'OfferPresentation.emailAsset.min' })
84
+ .max(64, { message: 'OfferPresentation.emailAsset.max' })
85
+ .optional(),
86
+ countdown: z
87
+ .enum(OfferCountdownMode, { error: 'OfferPresentation.countdown.invalid' })
88
+ .default(OfferCountdownMode.NONE),
89
+ followUps: z
90
+ .array(OfferFollowUpSchema)
91
+ .max(OFFER_MAX_FOLLOW_UPS, { message: 'OfferPresentation.followUps.max' })
92
+ .default([]),
93
+ });
94
+ //# sourceMappingURL=offer-presentation.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-presentation.schema.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/offer-presentation.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import { z } from 'zod';
2
+ import { UUID_REGEX, BIGINT_STRING_REGEX } from '../../../shared';
3
+ import { PlanType } from '../../plans/schemas/plan-type.enum';
4
+ export const OFFER_PROMO_CODE_PREFIX_REGEX = /^[A-Z0-9]{2,12}$/;
5
+ export var OfferPromoTemplateKind;
6
+ (function (OfferPromoTemplateKind) {
7
+ OfferPromoTemplateKind["PURCHASE_MULTIPLIER"] = "PURCHASE_MULTIPLIER";
8
+ })(OfferPromoTemplateKind || (OfferPromoTemplateKind = {}));
9
+ export const PurchaseMultiplierTemplateSchema = z.object({
10
+ kind: z.literal(OfferPromoTemplateKind.PURCHASE_MULTIPLIER),
11
+ bonusPercent: z
12
+ .number({ error: 'OfferPromoTemplate.bonusPercent.invalid' })
13
+ .int({ message: 'OfferPromoTemplate.bonusPercent.invalid' })
14
+ .min(1, { message: 'OfferPromoTemplate.bonusPercent.min' })
15
+ .max(100, { message: 'OfferPromoTemplate.bonusPercent.max' }),
16
+ maxBonusAmount: z
17
+ .string({ error: 'OfferPromoTemplate.maxBonusAmount.invalid' })
18
+ .regex(BIGINT_STRING_REGEX, { message: 'OfferPromoTemplate.maxBonusAmount.invalid' }),
19
+ codePrefix: z
20
+ .string({ error: 'OfferPromoTemplate.codePrefix.required' })
21
+ .regex(OFFER_PROMO_CODE_PREFIX_REGEX, { message: 'OfferPromoTemplate.codePrefix.invalid' }),
22
+ applicablePlanTypes: z
23
+ .array(z.nativeEnum(PlanType, { error: 'OfferPromoTemplate.applicablePlanTypes.invalid' }))
24
+ .optional(),
25
+ applicablePlanIds: z
26
+ .array(z
27
+ .string({ error: 'OfferPromoTemplate.applicablePlanIds.invalid' })
28
+ .regex(UUID_REGEX, { message: 'OfferPromoTemplate.applicablePlanIds.invalid' }))
29
+ .optional(),
30
+ firstPurchaseOnly: z
31
+ .boolean({ error: 'OfferPromoTemplate.firstPurchaseOnly.invalid' })
32
+ .optional(),
33
+ minPurchaseAmount: z
34
+ .string({ error: 'OfferPromoTemplate.minPurchaseAmount.invalid' })
35
+ .regex(BIGINT_STRING_REGEX, { message: 'OfferPromoTemplate.minPurchaseAmount.invalid' })
36
+ .optional(),
37
+ });
38
+ export const OfferPromoTemplateSchema = z.discriminatedUnion('kind', [
39
+ PurchaseMultiplierTemplateSchema,
40
+ ]);
41
+ //# sourceMappingURL=offer-promo-template.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-promo-template.schema.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/offer-promo-template.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAE9D,MAAM,CAAC,MAAM,6BAA6B,GAAG,kBAAkB,CAAC;AAMhE,MAAM,CAAN,IAAY,sBAEX;AAFD,WAAY,sBAAsB;IAC9B,qEAA2C,CAAA;AAC/C,CAAC,EAFW,sBAAsB,KAAtB,sBAAsB,QAEjC;AAED,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,mBAAmB,CAAC;IAC3D,YAAY,EAAE,CAAC;SACV,MAAM,CAAC,EAAE,KAAK,EAAE,yCAAyC,EAAE,CAAC;SAC5D,GAAG,CAAC,EAAE,OAAO,EAAE,yCAAyC,EAAE,CAAC;SAC3D,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC;SAC1D,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC;IAEjE,cAAc,EAAE,CAAC;SACZ,MAAM,CAAC,EAAE,KAAK,EAAE,2CAA2C,EAAE,CAAC;SAC9D,KAAK,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC;IACzF,UAAU,EAAE,CAAC;SACR,MAAM,CAAC,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAC;SAC3D,KAAK,CAAC,6BAA6B,EAAE,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC;IAC/F,mBAAmB,EAAE,CAAC;SACjB,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,gDAAgD,EAAE,CAAC,CAAC;SAC1F,QAAQ,EAAE;IACf,iBAAiB,EAAE,CAAC;SACf,KAAK,CACF,CAAC;SACI,MAAM,CAAC,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC;SACjE,KAAK,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,8CAA8C,EAAE,CAAC,CACtF;SACA,QAAQ,EAAE;IACf,iBAAiB,EAAE,CAAC;SACf,OAAO,CAAC,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC;SAClE,QAAQ,EAAE;IAEf,iBAAiB,EAAE,CAAC;SACf,MAAM,CAAC,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC;SACjE,KAAK,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,8CAA8C,EAAE,CAAC;SACvF,QAAQ,EAAE;CAClB,CAAC,CAAC;AASH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACjE,gCAAgC;CACnC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export var OfferTriggerType;
2
+ (function (OfferTriggerType) {
3
+ OfferTriggerType["USER_REGISTERED"] = "USER_REGISTERED";
4
+ OfferTriggerType["CHECKOUT_ABANDONED"] = "CHECKOUT_ABANDONED";
5
+ OfferTriggerType["MANUAL"] = "MANUAL";
6
+ })(OfferTriggerType || (OfferTriggerType = {}));
7
+ //# sourceMappingURL=offer-trigger-type.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-trigger-type.enum.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/offer-trigger-type.enum.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,gBAWX;AAXD,WAAY,gBAAgB;IACxB,uDAAmC,CAAA;IAQnC,6DAAyC,CAAA;IACzC,qCAAiB,CAAA;AACrB,CAAC,EAXW,gBAAgB,KAAhB,gBAAgB,QAW3B"}
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+ export const UnregTrackHeaderOfferRequestSchema = z.object({
3
+ campaignKey: z
4
+ .string({ error: 'UnregTrackHeaderOffer.campaignKey.required' })
5
+ .min(1, { message: 'UnregTrackHeaderOffer.campaignKey.min' })
6
+ .max(100, { message: 'UnregTrackHeaderOffer.campaignKey.max' }),
7
+ });
8
+ //# sourceMappingURL=unreg-track-header-offer-request.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unreg-track-header-offer-request.schema.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/unreg-track-header-offer-request.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,WAAW,EAAE,CAAC;SACT,MAAM,CAAC,EAAE,KAAK,EAAE,4CAA4C,EAAE,CAAC;SAC/D,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC;SAC5D,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC;CACtE,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export var UserOfferEventType;
2
+ (function (UserOfferEventType) {
3
+ UserOfferEventType["IMPRESSION"] = "IMPRESSION";
4
+ UserOfferEventType["CLICK"] = "CLICK";
5
+ UserOfferEventType["DISMISS"] = "DISMISS";
6
+ UserOfferEventType["CONVERSION"] = "CONVERSION";
7
+ })(UserOfferEventType || (UserOfferEventType = {}));
8
+ //# sourceMappingURL=user-offer-event-type.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-offer-event-type.enum.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/user-offer-event-type.enum.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC1B,+CAAyB,CAAA;IACzB,qCAAe,CAAA;IACf,yCAAmB,CAAA;IACnB,+CAAyB,CAAA;AAC7B,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B"}
@@ -0,0 +1,11 @@
1
+ export var UserOfferStatus;
2
+ (function (UserOfferStatus) {
3
+ UserOfferStatus["PENDING"] = "PENDING";
4
+ UserOfferStatus["ACTIVE"] = "ACTIVE";
5
+ UserOfferStatus["CLICKED"] = "CLICKED";
6
+ UserOfferStatus["CONVERTED"] = "CONVERTED";
7
+ UserOfferStatus["EXPIRED"] = "EXPIRED";
8
+ UserOfferStatus["DISMISSED"] = "DISMISSED";
9
+ UserOfferStatus["CANCELLED"] = "CANCELLED";
10
+ })(UserOfferStatus || (UserOfferStatus = {}));
11
+ //# sourceMappingURL=user-offer-status.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-offer-status.enum.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/user-offer-status.enum.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,eAQX;AARD,WAAY,eAAe;IACvB,sCAAmB,CAAA;IACnB,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,0CAAuB,CAAA;IACvB,sCAAmB,CAAA;IACnB,0CAAuB,CAAA;IACvB,0CAAuB,CAAA;AAC3B,CAAC,EARW,eAAe,KAAf,eAAe,QAQ1B"}
@@ -0,0 +1,25 @@
1
+ import { z } from 'zod';
2
+ import { UUID_REGEX } from '../../../shared';
3
+ import { UserOfferStatus } from './user-offer-status.enum';
4
+ export const UserOfferSchema = z.object({
5
+ id: z.string().regex(UUID_REGEX),
6
+ campaignId: z.string().regex(UUID_REGEX),
7
+ userId: z.string().regex(UUID_REGEX),
8
+ status: z.nativeEnum(UserOfferStatus),
9
+ promoCode: z.string().nullable(),
10
+ activatesAt: z.string().datetime({ offset: true }),
11
+ expiresAt: z.string().datetime({ offset: true }),
12
+ firstShownAt: z.string().datetime({ offset: true }).nullable(),
13
+ clickedAt: z.string().datetime({ offset: true }).nullable(),
14
+ dismissedAt: z.string().datetime({ offset: true }).nullable(),
15
+ convertedAt: z.string().datetime({ offset: true }).nullable(),
16
+ conversionOrderId: z.string().regex(UUID_REGEX).nullable(),
17
+ impressionCount: z.number().int().nonnegative(),
18
+ createdAt: z.string().datetime({ offset: true }),
19
+ updatedAt: z.string().datetime({ offset: true }),
20
+ });
21
+ export const UserOfferListResponseSchema = z.object({
22
+ items: z.array(UserOfferSchema),
23
+ total: z.number().int().nonnegative(),
24
+ });
25
+ //# sourceMappingURL=user-offer.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-offer.schema.js","sourceRoot":"","sources":["../../../../v1/offers/schemas/user-offer.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC;IACpC,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAClD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAChD,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC9D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC3D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC7D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC7D,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;IAC1D,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC/C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;CACnD,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;CACxC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { z } from 'zod';
2
+ import { DismissWebNotificationResponseSchema } from '../schemas';
3
+ import { REST_API } from '../../../rest-api';
4
+ import { HttpMethod } from '../../../shared/http-method.enum';
5
+ export var DismissWebNotificationCommand;
6
+ (function (DismissWebNotificationCommand) {
7
+ DismissWebNotificationCommand.Request = z.object({});
8
+ DismissWebNotificationCommand.Response = DismissWebNotificationResponseSchema;
9
+ DismissWebNotificationCommand.URL = REST_API.V1.WEB_NOTIFICATIONS.REG.DISMISS;
10
+ DismissWebNotificationCommand.METHOD = HttpMethod.POST;
11
+ })(DismissWebNotificationCommand || (DismissWebNotificationCommand = {}));
12
+ //# sourceMappingURL=dismiss-web-notification.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dismiss-web-notification.command.js","sourceRoot":"","sources":["../../../../v1/web-notifications/commands/dismiss-web-notification.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,oCAAoC,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,MAAM,KAAW,6BAA6B,CAQ7C;AARD,WAAiB,6BAA6B;IAC7B,qCAAO,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,sCAAQ,GAAG,oCAAoC,CAAC;IAChD,iCAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;IAChD,oCAAM,GAAG,UAAU,CAAC,IAAI,CAAC;AAI1C,CAAC,EARgB,6BAA6B,KAA7B,6BAA6B,QAQ7C"}
@@ -1,2 +1,5 @@
1
1
  export * from './mark-web-notifications-read-up-to.command';
2
+ export * from './dismiss-web-notification.command';
3
+ export * from './track-web-notification-impression.command';
4
+ export * from './track-web-notification-click.command';
2
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../v1/web-notifications/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,6CAA6C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../v1/web-notifications/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oCAAoC,CAAC;AACnD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,wCAAwC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { z } from 'zod';
2
+ import { TrackWebNotificationEngagementResponseSchema } from '../schemas';
3
+ import { REST_API } from '../../../rest-api';
4
+ import { HttpMethod } from '../../../shared/http-method.enum';
5
+ export var TrackWebNotificationClickCommand;
6
+ (function (TrackWebNotificationClickCommand) {
7
+ TrackWebNotificationClickCommand.Request = z.object({});
8
+ TrackWebNotificationClickCommand.Response = TrackWebNotificationEngagementResponseSchema;
9
+ TrackWebNotificationClickCommand.URL = REST_API.V1.WEB_NOTIFICATIONS.REG.CLICK;
10
+ TrackWebNotificationClickCommand.METHOD = HttpMethod.POST;
11
+ })(TrackWebNotificationClickCommand || (TrackWebNotificationClickCommand = {}));
12
+ //# sourceMappingURL=track-web-notification-click.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"track-web-notification-click.command.js","sourceRoot":"","sources":["../../../../v1/web-notifications/commands/track-web-notification-click.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4CAA4C,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,MAAM,KAAW,gCAAgC,CAQhD;AARD,WAAiB,gCAAgC;IAChC,wCAAO,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,yCAAQ,GAAG,4CAA4C,CAAC;IACxD,oCAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC;IAC9C,uCAAM,GAAG,UAAU,CAAC,IAAI,CAAC;AAI1C,CAAC,EARgB,gCAAgC,KAAhC,gCAAgC,QAQhD"}
@@ -0,0 +1,12 @@
1
+ import { z } from 'zod';
2
+ import { TrackWebNotificationEngagementResponseSchema } from '../schemas';
3
+ import { REST_API } from '../../../rest-api';
4
+ import { HttpMethod } from '../../../shared/http-method.enum';
5
+ export var TrackWebNotificationImpressionCommand;
6
+ (function (TrackWebNotificationImpressionCommand) {
7
+ TrackWebNotificationImpressionCommand.Request = z.object({});
8
+ TrackWebNotificationImpressionCommand.Response = TrackWebNotificationEngagementResponseSchema;
9
+ TrackWebNotificationImpressionCommand.URL = REST_API.V1.WEB_NOTIFICATIONS.REG.IMPRESSION;
10
+ TrackWebNotificationImpressionCommand.METHOD = HttpMethod.POST;
11
+ })(TrackWebNotificationImpressionCommand || (TrackWebNotificationImpressionCommand = {}));
12
+ //# sourceMappingURL=track-web-notification-impression.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"track-web-notification-impression.command.js","sourceRoot":"","sources":["../../../../v1/web-notifications/commands/track-web-notification-impression.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4CAA4C,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,MAAM,KAAW,qCAAqC,CAQrD;AARD,WAAiB,qCAAqC;IACrC,6CAAO,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,8CAAQ,GAAG,4CAA4C,CAAC;IACxD,yCAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC;IACnD,4CAAM,GAAG,UAAU,CAAC,IAAI,CAAC;AAI1C,CAAC,EARgB,qCAAqC,KAArC,qCAAqC,QAQrD"}
@@ -0,0 +1,5 @@
1
+ import { z } from 'zod';
2
+ export const DismissWebNotificationResponseSchema = z.object({
3
+ dismissed: z.boolean(),
4
+ });
5
+ //# sourceMappingURL=dismiss-web-notification-response.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dismiss-web-notification-response.schema.js","sourceRoot":"","sources":["../../../../v1/web-notifications/schemas/dismiss-web-notification-response.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE;CACzB,CAAC,CAAC"}