magicbell-js 0.0.3 → 0.1.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 (398) hide show
  1. package/README.md +2 -3
  2. package/dist/commonjs/project-client/http/errors/throwable-error.d.ts +7 -0
  3. package/dist/commonjs/project-client/http/errors/throwable-error.d.ts.map +1 -0
  4. package/dist/commonjs/project-client/http/errors/throwable-error.js +25 -0
  5. package/dist/commonjs/project-client/http/errors/throwable-error.js.map +1 -0
  6. package/dist/commonjs/project-client/http/handlers/hook-handler.d.ts.map +1 -1
  7. package/dist/commonjs/project-client/http/handlers/hook-handler.js +2 -2
  8. package/dist/commonjs/project-client/http/handlers/hook-handler.js.map +1 -1
  9. package/dist/commonjs/project-client/http/transport/types.d.ts +2 -1
  10. package/dist/commonjs/project-client/http/transport/types.d.ts.map +1 -1
  11. package/dist/commonjs/project-client/services/broadcasts/broadcasts-service.d.ts.map +1 -1
  12. package/dist/commonjs/project-client/services/broadcasts/broadcasts-service.js.map +1 -1
  13. package/dist/commonjs/project-client/services/channels/channels-service.d.ts.map +1 -1
  14. package/dist/commonjs/project-client/services/channels/channels-service.js.map +1 -1
  15. package/dist/commonjs/project-client/services/events/events-service.d.ts.map +1 -1
  16. package/dist/commonjs/project-client/services/events/events-service.js.map +1 -1
  17. package/dist/commonjs/project-client/services/integrations/integrations-service.d.ts.map +1 -1
  18. package/dist/commonjs/project-client/services/integrations/integrations-service.js.map +1 -1
  19. package/dist/commonjs/project-client/services/jwt/jwt-service.d.ts +1 -25
  20. package/dist/commonjs/project-client/services/jwt/jwt-service.d.ts.map +1 -1
  21. package/dist/commonjs/project-client/services/jwt/jwt-service.js +0 -103
  22. package/dist/commonjs/project-client/services/jwt/jwt-service.js.map +1 -1
  23. package/dist/commonjs/project-client/services/jwt/models/index.d.ts +0 -1
  24. package/dist/commonjs/project-client/services/jwt/models/index.d.ts.map +1 -1
  25. package/dist/commonjs/project-client/services/jwt/request-params.d.ts +0 -5
  26. package/dist/commonjs/project-client/services/jwt/request-params.d.ts.map +1 -1
  27. package/dist/commonjs/project-client/services/notifications/notifications-service.d.ts.map +1 -1
  28. package/dist/commonjs/project-client/services/notifications/notifications-service.js.map +1 -1
  29. package/dist/commonjs/project-client/services/users/users-service.d.ts.map +1 -1
  30. package/dist/commonjs/project-client/services/users/users-service.js.map +1 -1
  31. package/dist/commonjs/user-client/http/errors/throwable-error.d.ts +7 -0
  32. package/dist/commonjs/user-client/http/errors/throwable-error.d.ts.map +1 -0
  33. package/dist/commonjs/user-client/http/errors/throwable-error.js +25 -0
  34. package/dist/commonjs/user-client/http/errors/throwable-error.js.map +1 -0
  35. package/dist/commonjs/user-client/http/handlers/hook-handler.d.ts.map +1 -1
  36. package/dist/commonjs/user-client/http/handlers/hook-handler.js +2 -2
  37. package/dist/commonjs/user-client/http/handlers/hook-handler.js.map +1 -1
  38. package/dist/commonjs/user-client/http/transport/types.d.ts +2 -1
  39. package/dist/commonjs/user-client/http/transport/types.d.ts.map +1 -1
  40. package/dist/commonjs/user-client/services/channels/channels-service.d.ts.map +1 -1
  41. package/dist/commonjs/user-client/services/channels/channels-service.js.map +1 -1
  42. package/dist/commonjs/user-client/services/integrations/integrations-service.d.ts.map +1 -1
  43. package/dist/commonjs/user-client/services/integrations/integrations-service.js.map +1 -1
  44. package/dist/commonjs/user-client/services/notifications/notifications-service.d.ts +26 -1
  45. package/dist/commonjs/user-client/services/notifications/notifications-service.d.ts.map +1 -1
  46. package/dist/commonjs/user-client/services/notifications/notifications-service.js +106 -0
  47. package/dist/commonjs/user-client/services/notifications/notifications-service.js.map +1 -1
  48. package/dist/commonjs/user-client/services/notifications/request-params.d.ts +9 -0
  49. package/dist/commonjs/user-client/services/notifications/request-params.d.ts.map +1 -1
  50. package/dist/esm/project-client/http/errors/throwable-error.d.ts +7 -0
  51. package/dist/esm/project-client/http/errors/throwable-error.d.ts.map +1 -0
  52. package/dist/esm/project-client/http/errors/throwable-error.js +21 -0
  53. package/dist/esm/project-client/http/errors/throwable-error.js.map +1 -0
  54. package/dist/esm/project-client/http/handlers/hook-handler.d.ts.map +1 -1
  55. package/dist/esm/project-client/http/handlers/hook-handler.js +2 -2
  56. package/dist/esm/project-client/http/handlers/hook-handler.js.map +1 -1
  57. package/dist/esm/project-client/http/transport/types.d.ts +2 -1
  58. package/dist/esm/project-client/http/transport/types.d.ts.map +1 -1
  59. package/dist/esm/project-client/services/broadcasts/broadcasts-service.d.ts.map +1 -1
  60. package/dist/esm/project-client/services/broadcasts/broadcasts-service.js.map +1 -1
  61. package/dist/esm/project-client/services/channels/channels-service.d.ts.map +1 -1
  62. package/dist/esm/project-client/services/channels/channels-service.js.map +1 -1
  63. package/dist/esm/project-client/services/events/events-service.d.ts.map +1 -1
  64. package/dist/esm/project-client/services/events/events-service.js.map +1 -1
  65. package/dist/esm/project-client/services/integrations/integrations-service.d.ts.map +1 -1
  66. package/dist/esm/project-client/services/integrations/integrations-service.js.map +1 -1
  67. package/dist/esm/project-client/services/jwt/jwt-service.d.ts +1 -25
  68. package/dist/esm/project-client/services/jwt/jwt-service.d.ts.map +1 -1
  69. package/dist/esm/project-client/services/jwt/jwt-service.js +0 -103
  70. package/dist/esm/project-client/services/jwt/jwt-service.js.map +1 -1
  71. package/dist/esm/project-client/services/jwt/models/index.d.ts +0 -1
  72. package/dist/esm/project-client/services/jwt/models/index.d.ts.map +1 -1
  73. package/dist/esm/project-client/services/jwt/request-params.d.ts +0 -5
  74. package/dist/esm/project-client/services/jwt/request-params.d.ts.map +1 -1
  75. package/dist/esm/project-client/services/notifications/notifications-service.d.ts.map +1 -1
  76. package/dist/esm/project-client/services/notifications/notifications-service.js.map +1 -1
  77. package/dist/esm/project-client/services/users/users-service.d.ts.map +1 -1
  78. package/dist/esm/project-client/services/users/users-service.js.map +1 -1
  79. package/dist/esm/user-client/http/errors/throwable-error.d.ts +7 -0
  80. package/dist/esm/user-client/http/errors/throwable-error.d.ts.map +1 -0
  81. package/dist/esm/user-client/http/errors/throwable-error.js +21 -0
  82. package/dist/esm/user-client/http/errors/throwable-error.js.map +1 -0
  83. package/dist/esm/user-client/http/handlers/hook-handler.d.ts.map +1 -1
  84. package/dist/esm/user-client/http/handlers/hook-handler.js +2 -2
  85. package/dist/esm/user-client/http/handlers/hook-handler.js.map +1 -1
  86. package/dist/esm/user-client/http/transport/types.d.ts +2 -1
  87. package/dist/esm/user-client/http/transport/types.d.ts.map +1 -1
  88. package/dist/esm/user-client/services/channels/channels-service.d.ts.map +1 -1
  89. package/dist/esm/user-client/services/channels/channels-service.js.map +1 -1
  90. package/dist/esm/user-client/services/integrations/integrations-service.d.ts.map +1 -1
  91. package/dist/esm/user-client/services/integrations/integrations-service.js.map +1 -1
  92. package/dist/esm/user-client/services/notifications/notifications-service.d.ts +26 -1
  93. package/dist/esm/user-client/services/notifications/notifications-service.d.ts.map +1 -1
  94. package/dist/esm/user-client/services/notifications/notifications-service.js +106 -0
  95. package/dist/esm/user-client/services/notifications/notifications-service.js.map +1 -1
  96. package/dist/esm/user-client/services/notifications/request-params.d.ts +9 -0
  97. package/dist/esm/user-client/services/notifications/request-params.d.ts.map +1 -1
  98. package/package.json +3 -1
  99. package/src/project-client/http/client.ts +71 -0
  100. package/src/project-client/http/environment.ts +3 -0
  101. package/src/project-client/http/error.ts +14 -0
  102. package/src/project-client/http/errors/throwable-error.ts +9 -0
  103. package/src/project-client/http/errors/validation-error.ts +25 -0
  104. package/src/project-client/http/handlers/handler-chain.ts +30 -0
  105. package/src/project-client/http/handlers/hook-handler.ts +80 -0
  106. package/src/project-client/http/handlers/request-validation-handler.ts +111 -0
  107. package/src/project-client/http/handlers/response-validation-handler.ts +203 -0
  108. package/src/project-client/http/handlers/retry-handler.ts +60 -0
  109. package/src/project-client/http/handlers/terminating-handler.ts +14 -0
  110. package/src/project-client/http/hooks/custom-hook.ts +25 -0
  111. package/src/project-client/http/hooks/hook.ts +41 -0
  112. package/src/project-client/http/index.ts +11 -0
  113. package/src/project-client/http/serialization/base-serializer.ts +139 -0
  114. package/src/project-client/http/serialization/header-serializer.ts +19 -0
  115. package/src/project-client/http/serialization/path-serializer.ts +12 -0
  116. package/src/project-client/http/serialization/query-serializer.ts +18 -0
  117. package/src/project-client/http/transport/request-builder.ts +242 -0
  118. package/src/project-client/http/transport/request-fetch-adapter.ts +131 -0
  119. package/src/project-client/http/transport/request.ts +222 -0
  120. package/src/project-client/http/transport/transport-hook-adapter.ts +91 -0
  121. package/src/project-client/http/transport/types.ts +51 -0
  122. package/src/project-client/http/types.ts +74 -0
  123. package/src/project-client/http/utils/content-type.ts +33 -0
  124. package/src/project-client/http/utils/line-decoder.ts +35 -0
  125. package/src/project-client/http/utils/response-matcher.ts +25 -0
  126. package/src/project-client/index.ts +94 -0
  127. package/src/project-client/services/base-service.ts +27 -0
  128. package/src/project-client/services/broadcasts/broadcasts-service.ts +116 -0
  129. package/src/project-client/services/broadcasts/index.ts +2 -0
  130. package/src/project-client/services/broadcasts/models/broadcast-collection.ts +54 -0
  131. package/src/project-client/services/broadcasts/models/broadcast-status.ts +60 -0
  132. package/src/project-client/services/broadcasts/models/broadcast.ts +143 -0
  133. package/src/project-client/services/broadcasts/models/email.ts +57 -0
  134. package/src/project-client/services/broadcasts/models/errors.ts +45 -0
  135. package/src/project-client/services/broadcasts/models/in-app.ts +57 -0
  136. package/src/project-client/services/broadcasts/models/index.ts +15 -0
  137. package/src/project-client/services/broadcasts/models/mobile-push.ts +57 -0
  138. package/src/project-client/services/broadcasts/models/overrides-channels.ts +82 -0
  139. package/src/project-client/services/broadcasts/models/overrides.ts +59 -0
  140. package/src/project-client/services/broadcasts/models/providers.ts +81 -0
  141. package/src/project-client/services/broadcasts/models/slack.ts +57 -0
  142. package/src/project-client/services/broadcasts/models/sms.ts +57 -0
  143. package/src/project-client/services/broadcasts/models/status-status.ts +7 -0
  144. package/src/project-client/services/broadcasts/models/summary.ts +51 -0
  145. package/src/project-client/services/broadcasts/models/web-push.ts +57 -0
  146. package/src/project-client/services/broadcasts/request-params.ts +5 -0
  147. package/src/project-client/services/channels/channels-service.ts +1018 -0
  148. package/src/project-client/services/channels/index.ts +2 -0
  149. package/src/project-client/services/channels/models/apns-token-collection.ts +54 -0
  150. package/src/project-client/services/channels/models/apns-token-installation-id.ts +6 -0
  151. package/src/project-client/services/channels/models/apns-token.ts +90 -0
  152. package/src/project-client/services/channels/models/category-delivery-config-channels.ts +57 -0
  153. package/src/project-client/services/channels/models/category-delivery-config.ts +73 -0
  154. package/src/project-client/services/channels/models/channel.ts +11 -0
  155. package/src/project-client/services/channels/models/discard-result.ts +51 -0
  156. package/src/project-client/services/channels/models/expo-token-collection.ts +54 -0
  157. package/src/project-client/services/channels/models/expo-token.ts +69 -0
  158. package/src/project-client/services/channels/models/fcm-token-collection.ts +54 -0
  159. package/src/project-client/services/channels/models/fcm-token-installation-id.ts +6 -0
  160. package/src/project-client/services/channels/models/fcm-token.ts +75 -0
  161. package/src/project-client/services/channels/models/inbox-token-response-collection.ts +59 -0
  162. package/src/project-client/services/channels/models/inbox-token-response.ts +75 -0
  163. package/src/project-client/services/channels/models/index.ts +24 -0
  164. package/src/project-client/services/channels/models/keys.ts +51 -0
  165. package/src/project-client/services/channels/models/oauth.ts +57 -0
  166. package/src/project-client/services/channels/models/slack-token-collection.ts +54 -0
  167. package/src/project-client/services/channels/models/slack-token-webhook.ts +45 -0
  168. package/src/project-client/services/channels/models/slack-token.ts +83 -0
  169. package/src/project-client/services/channels/models/teams-token-collection.ts +54 -0
  170. package/src/project-client/services/channels/models/teams-token-webhook.ts +45 -0
  171. package/src/project-client/services/channels/models/teams-token.ts +76 -0
  172. package/src/project-client/services/channels/models/web-push-token-collection.ts +54 -0
  173. package/src/project-client/services/channels/models/web-push-token.ts +77 -0
  174. package/src/project-client/services/channels/request-params.ts +45 -0
  175. package/src/project-client/services/common/index.ts +1 -0
  176. package/src/project-client/services/common/links.ts +57 -0
  177. package/src/project-client/services/events/events-service.ts +85 -0
  178. package/src/project-client/services/events/index.ts +2 -0
  179. package/src/project-client/services/events/models/event-collection.ts +54 -0
  180. package/src/project-client/services/events/models/event.ts +81 -0
  181. package/src/project-client/services/events/models/index.ts +2 -0
  182. package/src/project-client/services/events/request-params.ts +5 -0
  183. package/src/project-client/services/integrations/index.ts +2 -0
  184. package/src/project-client/services/integrations/integrations-service.ts +1966 -0
  185. package/src/project-client/services/integrations/models/apns-config-collection.ts +54 -0
  186. package/src/project-client/services/integrations/models/apns-config-payload.ts +81 -0
  187. package/src/project-client/services/integrations/models/apns-config.ts +64 -0
  188. package/src/project-client/services/integrations/models/awssns-config-collection.ts +54 -0
  189. package/src/project-client/services/integrations/models/awssns-config-payload.ts +45 -0
  190. package/src/project-client/services/integrations/models/awssns-config.ts +64 -0
  191. package/src/project-client/services/integrations/models/badge.ts +6 -0
  192. package/src/project-client/services/integrations/models/banner.ts +63 -0
  193. package/src/project-client/services/integrations/models/default-hover.ts +45 -0
  194. package/src/project-client/services/integrations/models/default-state.ts +45 -0
  195. package/src/project-client/services/integrations/models/default_.ts +90 -0
  196. package/src/project-client/services/integrations/models/dialog.ts +57 -0
  197. package/src/project-client/services/integrations/models/event-source-config-collection.ts +59 -0
  198. package/src/project-client/services/integrations/models/event-source-config-payload.ts +45 -0
  199. package/src/project-client/services/integrations/models/event-source-config.ts +64 -0
  200. package/src/project-client/services/integrations/models/expo-config-collection.ts +54 -0
  201. package/src/project-client/services/integrations/models/expo-config-payload.ts +45 -0
  202. package/src/project-client/services/integrations/models/expo-config.ts +64 -0
  203. package/src/project-client/services/integrations/models/fcm-config-collection.ts +54 -0
  204. package/src/project-client/services/integrations/models/fcm-config-payload.ts +105 -0
  205. package/src/project-client/services/integrations/models/fcm-config.ts +64 -0
  206. package/src/project-client/services/integrations/models/footer.ts +63 -0
  207. package/src/project-client/services/integrations/models/github-config-collection.ts +54 -0
  208. package/src/project-client/services/integrations/models/github-config-payload.ts +45 -0
  209. package/src/project-client/services/integrations/models/github-config.ts +64 -0
  210. package/src/project-client/services/integrations/models/header.ts +69 -0
  211. package/src/project-client/services/integrations/models/icon.ts +51 -0
  212. package/src/project-client/services/integrations/models/images.ts +45 -0
  213. package/src/project-client/services/integrations/models/inbox-config-collection.ts +54 -0
  214. package/src/project-client/services/integrations/models/inbox-config-payload.ts +60 -0
  215. package/src/project-client/services/integrations/models/inbox-config.ts +64 -0
  216. package/src/project-client/services/integrations/models/index.ts +75 -0
  217. package/src/project-client/services/integrations/models/integration-config-collection.ts +59 -0
  218. package/src/project-client/services/integrations/models/integration-config.ts +57 -0
  219. package/src/project-client/services/integrations/models/mailgun-config-collection.ts +54 -0
  220. package/src/project-client/services/integrations/models/mailgun-config-payload-from.ts +51 -0
  221. package/src/project-client/services/integrations/models/mailgun-config-payload.ts +70 -0
  222. package/src/project-client/services/integrations/models/mailgun-config.ts +64 -0
  223. package/src/project-client/services/integrations/models/notification.ts +61 -0
  224. package/src/project-client/services/integrations/models/payload-version.ts +6 -0
  225. package/src/project-client/services/integrations/models/ping-config-collection.ts +54 -0
  226. package/src/project-client/services/integrations/models/ping-config-payload.ts +45 -0
  227. package/src/project-client/services/integrations/models/ping-config.ts +64 -0
  228. package/src/project-client/services/integrations/models/region.ts +6 -0
  229. package/src/project-client/services/integrations/models/reply-to.ts +51 -0
  230. package/src/project-client/services/integrations/models/sendgrid-config-collection.ts +54 -0
  231. package/src/project-client/services/integrations/models/sendgrid-config-payload-from.ts +51 -0
  232. package/src/project-client/services/integrations/models/sendgrid-config-payload.ts +65 -0
  233. package/src/project-client/services/integrations/models/sendgrid-config.ts +64 -0
  234. package/src/project-client/services/integrations/models/ses-config-collection.ts +54 -0
  235. package/src/project-client/services/integrations/models/ses-config-payload-from.ts +51 -0
  236. package/src/project-client/services/integrations/models/ses-config-payload.ts +70 -0
  237. package/src/project-client/services/integrations/models/ses-config.ts +64 -0
  238. package/src/project-client/services/integrations/models/slack-config-collection.ts +54 -0
  239. package/src/project-client/services/integrations/models/slack-config-payload.ts +63 -0
  240. package/src/project-client/services/integrations/models/slack-config.ts +64 -0
  241. package/src/project-client/services/integrations/models/stripe-config-collection.ts +54 -0
  242. package/src/project-client/services/integrations/models/stripe-config-payload.ts +45 -0
  243. package/src/project-client/services/integrations/models/stripe-config.ts +64 -0
  244. package/src/project-client/services/integrations/models/templates-config-collection.ts +59 -0
  245. package/src/project-client/services/integrations/models/templates-config.ts +57 -0
  246. package/src/project-client/services/integrations/models/theme.ts +89 -0
  247. package/src/project-client/services/integrations/models/twilio-config-collection.ts +54 -0
  248. package/src/project-client/services/integrations/models/twilio-config-payload.ts +75 -0
  249. package/src/project-client/services/integrations/models/twilio-config.ts +64 -0
  250. package/src/project-client/services/integrations/models/type_.ts +5 -0
  251. package/src/project-client/services/integrations/models/unread-hover.ts +45 -0
  252. package/src/project-client/services/integrations/models/unread-state.ts +45 -0
  253. package/src/project-client/services/integrations/models/unread.ts +66 -0
  254. package/src/project-client/services/integrations/models/unseen-badge.ts +45 -0
  255. package/src/project-client/services/integrations/models/unseen-hover.ts +45 -0
  256. package/src/project-client/services/integrations/models/unseen-state.ts +45 -0
  257. package/src/project-client/services/integrations/models/unseen.ts +66 -0
  258. package/src/project-client/services/integrations/models/webpush-config-collection.ts +54 -0
  259. package/src/project-client/services/integrations/models/webpush-config-payload.ts +51 -0
  260. package/src/project-client/services/integrations/models/webpush-config.ts +64 -0
  261. package/src/project-client/services/integrations/request-params.ts +5 -0
  262. package/src/project-client/services/jwt/index.ts +2 -0
  263. package/src/project-client/services/jwt/jwt-service.ts +121 -0
  264. package/src/project-client/services/jwt/models/access-token-collection.ts +54 -0
  265. package/src/project-client/services/jwt/models/access-token.ts +69 -0
  266. package/src/project-client/services/jwt/models/create-project-token-request.ts +51 -0
  267. package/src/project-client/services/jwt/models/create-token-response.ts +63 -0
  268. package/src/project-client/services/jwt/models/discard-token-response.ts +51 -0
  269. package/src/project-client/services/jwt/models/index.ts +5 -0
  270. package/src/project-client/services/jwt/request-params.ts +5 -0
  271. package/src/project-client/services/notifications/index.ts +2 -0
  272. package/src/project-client/services/notifications/models/delivery-plan-collection.ts +54 -0
  273. package/src/project-client/services/notifications/models/delivery-plan.ts +93 -0
  274. package/src/project-client/services/notifications/models/index.ts +2 -0
  275. package/src/project-client/services/notifications/notifications-service.ts +45 -0
  276. package/src/project-client/services/users/index.ts +2 -0
  277. package/src/project-client/services/users/models/index.ts +2 -0
  278. package/src/project-client/services/users/models/user-collection.ts +54 -0
  279. package/src/project-client/services/users/models/user.ts +99 -0
  280. package/src/project-client/services/users/request-params.ts +6 -0
  281. package/src/project-client/services/users/users-service.ts +118 -0
  282. package/src/project-client.ts +1 -0
  283. package/src/user-client/http/client.ts +71 -0
  284. package/src/user-client/http/environment.ts +3 -0
  285. package/src/user-client/http/error.ts +14 -0
  286. package/src/user-client/http/errors/throwable-error.ts +9 -0
  287. package/src/user-client/http/errors/validation-error.ts +25 -0
  288. package/src/user-client/http/handlers/handler-chain.ts +30 -0
  289. package/src/user-client/http/handlers/hook-handler.ts +80 -0
  290. package/src/user-client/http/handlers/request-validation-handler.ts +111 -0
  291. package/src/user-client/http/handlers/response-validation-handler.ts +203 -0
  292. package/src/user-client/http/handlers/retry-handler.ts +60 -0
  293. package/src/user-client/http/handlers/terminating-handler.ts +14 -0
  294. package/src/user-client/http/hooks/custom-hook.ts +25 -0
  295. package/src/user-client/http/hooks/hook.ts +41 -0
  296. package/src/user-client/http/index.ts +11 -0
  297. package/src/user-client/http/serialization/base-serializer.ts +139 -0
  298. package/src/user-client/http/serialization/header-serializer.ts +19 -0
  299. package/src/user-client/http/serialization/path-serializer.ts +12 -0
  300. package/src/user-client/http/serialization/query-serializer.ts +18 -0
  301. package/src/user-client/http/transport/request-builder.ts +242 -0
  302. package/src/user-client/http/transport/request-fetch-adapter.ts +131 -0
  303. package/src/user-client/http/transport/request.ts +222 -0
  304. package/src/user-client/http/transport/transport-hook-adapter.ts +91 -0
  305. package/src/user-client/http/transport/types.ts +51 -0
  306. package/src/user-client/http/types.ts +74 -0
  307. package/src/user-client/http/utils/content-type.ts +33 -0
  308. package/src/user-client/http/utils/line-decoder.ts +35 -0
  309. package/src/user-client/http/utils/response-matcher.ts +25 -0
  310. package/src/user-client/index.ts +54 -0
  311. package/src/user-client/services/base-service.ts +27 -0
  312. package/src/user-client/services/channels/channels-service.ts +1021 -0
  313. package/src/user-client/services/channels/index.ts +2 -0
  314. package/src/user-client/services/channels/models/apns-token-collection.ts +54 -0
  315. package/src/user-client/services/channels/models/apns-token-installation-id.ts +6 -0
  316. package/src/user-client/services/channels/models/apns-token-payload-installation-id.ts +6 -0
  317. package/src/user-client/services/channels/models/apns-token-payload.ts +66 -0
  318. package/src/user-client/services/channels/models/apns-token.ts +90 -0
  319. package/src/user-client/services/channels/models/discard-result.ts +51 -0
  320. package/src/user-client/services/channels/models/expo-token-collection.ts +54 -0
  321. package/src/user-client/services/channels/models/expo-token-payload.ts +45 -0
  322. package/src/user-client/services/channels/models/expo-token.ts +69 -0
  323. package/src/user-client/services/channels/models/fcm-token-collection.ts +54 -0
  324. package/src/user-client/services/channels/models/fcm-token-installation-id.ts +6 -0
  325. package/src/user-client/services/channels/models/fcm-token-payload-installation-id.ts +6 -0
  326. package/src/user-client/services/channels/models/fcm-token-payload.ts +51 -0
  327. package/src/user-client/services/channels/models/fcm-token.ts +75 -0
  328. package/src/user-client/services/channels/models/inbox-token-response-collection.ts +59 -0
  329. package/src/user-client/services/channels/models/inbox-token-response.ts +75 -0
  330. package/src/user-client/services/channels/models/inbox-token.ts +51 -0
  331. package/src/user-client/services/channels/models/index.ts +33 -0
  332. package/src/user-client/services/channels/models/slack-token-collection.ts +54 -0
  333. package/src/user-client/services/channels/models/slack-token-oauth.ts +57 -0
  334. package/src/user-client/services/channels/models/slack-token-payload-oauth.ts +57 -0
  335. package/src/user-client/services/channels/models/slack-token-payload-webhook.ts +45 -0
  336. package/src/user-client/services/channels/models/slack-token-payload.ts +64 -0
  337. package/src/user-client/services/channels/models/slack-token-webhook.ts +45 -0
  338. package/src/user-client/services/channels/models/slack-token.ts +88 -0
  339. package/src/user-client/services/channels/models/teams-token-collection.ts +54 -0
  340. package/src/user-client/services/channels/models/teams-token-payload-webhook.ts +45 -0
  341. package/src/user-client/services/channels/models/teams-token-payload.ts +52 -0
  342. package/src/user-client/services/channels/models/teams-token-webhook.ts +45 -0
  343. package/src/user-client/services/channels/models/teams-token.ts +76 -0
  344. package/src/user-client/services/channels/models/web-push-token-collection.ts +54 -0
  345. package/src/user-client/services/channels/models/web-push-token-keys.ts +51 -0
  346. package/src/user-client/services/channels/models/web-push-token-payload-keys.ts +51 -0
  347. package/src/user-client/services/channels/models/web-push-token.ts +82 -0
  348. package/src/user-client/services/channels/request-params.ts +41 -0
  349. package/src/user-client/services/common/index.ts +2 -0
  350. package/src/user-client/services/common/links.ts +57 -0
  351. package/src/user-client/services/common/web-push-token-payload.ts +58 -0
  352. package/src/user-client/services/integrations/index.ts +2 -0
  353. package/src/user-client/services/integrations/integrations-service.ts +279 -0
  354. package/src/user-client/services/integrations/models/authed-user.ts +75 -0
  355. package/src/user-client/services/integrations/models/banner.ts +63 -0
  356. package/src/user-client/services/integrations/models/default-hover.ts +45 -0
  357. package/src/user-client/services/integrations/models/default-state.ts +45 -0
  358. package/src/user-client/services/integrations/models/default_.ts +90 -0
  359. package/src/user-client/services/integrations/models/dialog.ts +57 -0
  360. package/src/user-client/services/integrations/models/enterprise.ts +51 -0
  361. package/src/user-client/services/integrations/models/footer.ts +63 -0
  362. package/src/user-client/services/integrations/models/header.ts +69 -0
  363. package/src/user-client/services/integrations/models/icon.ts +51 -0
  364. package/src/user-client/services/integrations/models/images.ts +45 -0
  365. package/src/user-client/services/integrations/models/inbox-config-payload.ts +60 -0
  366. package/src/user-client/services/integrations/models/incoming-webhook.ts +57 -0
  367. package/src/user-client/services/integrations/models/index.ts +29 -0
  368. package/src/user-client/services/integrations/models/slack-finish-install-response.ts +57 -0
  369. package/src/user-client/services/integrations/models/slack-installation.ts +136 -0
  370. package/src/user-client/services/integrations/models/slack-start-install-response-content.ts +57 -0
  371. package/src/user-client/services/integrations/models/slack-start-install.ts +63 -0
  372. package/src/user-client/services/integrations/models/team.ts +51 -0
  373. package/src/user-client/services/integrations/models/templates-installation.ts +57 -0
  374. package/src/user-client/services/integrations/models/theme-notification.ts +61 -0
  375. package/src/user-client/services/integrations/models/theme.ts +94 -0
  376. package/src/user-client/services/integrations/models/unread-hover.ts +45 -0
  377. package/src/user-client/services/integrations/models/unread-state.ts +45 -0
  378. package/src/user-client/services/integrations/models/unread.ts +66 -0
  379. package/src/user-client/services/integrations/models/unseen-badge.ts +45 -0
  380. package/src/user-client/services/integrations/models/unseen-hover.ts +45 -0
  381. package/src/user-client/services/integrations/models/unseen-state.ts +45 -0
  382. package/src/user-client/services/integrations/models/unseen.ts +66 -0
  383. package/src/user-client/services/integrations/models/web-push-start-installation-response.ts +51 -0
  384. package/src/user-client/services/notifications/index.ts +2 -0
  385. package/src/user-client/services/notifications/models/index.ts +2 -0
  386. package/src/user-client/services/notifications/models/notification-collection.ts +54 -0
  387. package/src/user-client/services/notifications/models/notification.ts +129 -0
  388. package/src/user-client/services/notifications/notifications-service.ts +305 -0
  389. package/src/user-client/services/notifications/request-params.ts +18 -0
  390. package/src/user-client.ts +1 -0
  391. package/dist/commonjs/project-client/services/jwt/models/create-user-token-request.d.ts +0 -90
  392. package/dist/commonjs/project-client/services/jwt/models/create-user-token-request.d.ts.map +0 -1
  393. package/dist/commonjs/project-client/services/jwt/models/create-user-token-request.js +0 -54
  394. package/dist/commonjs/project-client/services/jwt/models/create-user-token-request.js.map +0 -1
  395. package/dist/esm/project-client/services/jwt/models/create-user-token-request.d.ts +0 -90
  396. package/dist/esm/project-client/services/jwt/models/create-user-token-request.d.ts.map +0 -1
  397. package/dist/esm/project-client/services/jwt/models/create-user-token-request.js +0 -51
  398. package/dist/esm/project-client/services/jwt/models/create-user-token-request.js.map +0 -1
@@ -0,0 +1,279 @@
1
+ import { z } from 'zod';
2
+
3
+ import { Environment } from '../../http/environment.js';
4
+ import { ThrowableError } from '../../http/errors/throwable-error.js';
5
+ import { SerializationStyle } from '../../http/serialization/base-serializer.js';
6
+ import { RequestBuilder } from '../../http/transport/request-builder.js';
7
+ import { ContentType, HttpResponse, RequestConfig } from '../../http/types.js';
8
+ import { BaseService } from '../base-service.js';
9
+ import {
10
+ WebPushTokenPayload,
11
+ webPushTokenPayloadRequest,
12
+ webPushTokenPayloadResponse,
13
+ } from '../common/web-push-token-payload.js';
14
+ import {
15
+ InboxConfigPayload,
16
+ inboxConfigPayloadRequest,
17
+ inboxConfigPayloadResponse,
18
+ } from './models/inbox-config-payload.js';
19
+ import {
20
+ SlackFinishInstallResponse,
21
+ slackFinishInstallResponseRequest,
22
+ } from './models/slack-finish-install-response.js';
23
+ import { SlackInstallation, slackInstallationRequest, slackInstallationResponse } from './models/slack-installation.js';
24
+ import { SlackStartInstall, slackStartInstallRequest } from './models/slack-start-install.js';
25
+ import {
26
+ SlackStartInstallResponseContent,
27
+ slackStartInstallResponseContentResponse,
28
+ } from './models/slack-start-install-response-content.js';
29
+ import {
30
+ TemplatesInstallation,
31
+ templatesInstallationRequest,
32
+ templatesInstallationResponse,
33
+ } from './models/templates-installation.js';
34
+ import {
35
+ WebPushStartInstallationResponse,
36
+ webPushStartInstallationResponseResponse,
37
+ } from './models/web-push-start-installation-response.js';
38
+
39
+ export class IntegrationsService extends BaseService {
40
+ /**
41
+ * Creates a new installation of a inbox integration for a user. This endpoint is used when an integration needs to be set up with user-specific credentials or configuration.
42
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
43
+ * @returns {Promise<HttpResponse<InboxConfigPayload>>} Created
44
+ */
45
+ async saveInboxInstallation(
46
+ body: InboxConfigPayload,
47
+ requestConfig?: RequestConfig,
48
+ ): Promise<HttpResponse<InboxConfigPayload>> {
49
+ const request = new RequestBuilder()
50
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
51
+ .setConfig(this.config)
52
+ .setMethod('POST')
53
+ .setPath('/integrations/inbox/installations')
54
+ .setRequestSchema(inboxConfigPayloadRequest)
55
+ .addAccessTokenAuth(this.config.token, 'Bearer')
56
+ .setRequestContentType(ContentType.Json)
57
+ .addResponse({
58
+ schema: inboxConfigPayloadResponse,
59
+ contentType: ContentType.Json,
60
+ status: 201,
61
+ })
62
+ .setRetryAttempts(this.config, requestConfig)
63
+ .setRetryDelayMs(this.config, requestConfig)
64
+ .setResponseValidation(this.config, requestConfig)
65
+ .addHeaderParam({ key: 'Content-Type', value: 'application/json' })
66
+ .addBody(body)
67
+ .build();
68
+ return this.client.call<InboxConfigPayload>(request);
69
+ }
70
+
71
+ /**
72
+ * Initiates the installation flow for a inbox integration. This is the first step in a multi-step installation process where user authorization or external service configuration may be required.
73
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
74
+ * @returns {Promise<HttpResponse<InboxConfigPayload>>} Created
75
+ */
76
+ async startInboxInstallation(requestConfig?: RequestConfig): Promise<HttpResponse<InboxConfigPayload>> {
77
+ const request = new RequestBuilder()
78
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
79
+ .setConfig(this.config)
80
+ .setMethod('POST')
81
+ .setPath('/integrations/inbox/installations/start')
82
+ .setRequestSchema(z.any())
83
+ .addAccessTokenAuth(this.config.token, 'Bearer')
84
+ .setRequestContentType(ContentType.Json)
85
+ .addResponse({
86
+ schema: inboxConfigPayloadResponse,
87
+ contentType: ContentType.Json,
88
+ status: 201,
89
+ })
90
+ .setRetryAttempts(this.config, requestConfig)
91
+ .setRetryDelayMs(this.config, requestConfig)
92
+ .setResponseValidation(this.config, requestConfig)
93
+ .build();
94
+ return this.client.call<InboxConfigPayload>(request);
95
+ }
96
+
97
+ /**
98
+ * Creates a new installation of a slack integration for a user. This endpoint is used when an integration needs to be set up with user-specific credentials or configuration.
99
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
100
+ * @returns {Promise<HttpResponse<SlackInstallation>>} Created
101
+ */
102
+ async saveSlackInstallation(
103
+ body: SlackInstallation,
104
+ requestConfig?: RequestConfig,
105
+ ): Promise<HttpResponse<SlackInstallation>> {
106
+ const request = new RequestBuilder()
107
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
108
+ .setConfig(this.config)
109
+ .setMethod('POST')
110
+ .setPath('/integrations/slack/installations')
111
+ .setRequestSchema(slackInstallationRequest)
112
+ .addAccessTokenAuth(this.config.token, 'Bearer')
113
+ .setRequestContentType(ContentType.Json)
114
+ .addResponse({
115
+ schema: slackInstallationResponse,
116
+ contentType: ContentType.Json,
117
+ status: 201,
118
+ })
119
+ .setRetryAttempts(this.config, requestConfig)
120
+ .setRetryDelayMs(this.config, requestConfig)
121
+ .setResponseValidation(this.config, requestConfig)
122
+ .addHeaderParam({ key: 'Content-Type', value: 'application/json' })
123
+ .addBody(body)
124
+ .build();
125
+ return this.client.call<SlackInstallation>(request);
126
+ }
127
+
128
+ /**
129
+ * Completes the installation flow for a slack integration. This endpoint is typically called after the user has completed any required authorization steps with slack.
130
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
131
+ * @returns {Promise<HttpResponse<SlackInstallation>>} Created
132
+ */
133
+ async finishSlackInstallation(
134
+ body: SlackFinishInstallResponse,
135
+ requestConfig?: RequestConfig,
136
+ ): Promise<HttpResponse<SlackInstallation>> {
137
+ const request = new RequestBuilder()
138
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
139
+ .setConfig(this.config)
140
+ .setMethod('POST')
141
+ .setPath('/integrations/slack/installations/finish')
142
+ .setRequestSchema(slackFinishInstallResponseRequest)
143
+ .addAccessTokenAuth(this.config.token, 'Bearer')
144
+ .setRequestContentType(ContentType.Json)
145
+ .addResponse({
146
+ schema: slackInstallationResponse,
147
+ contentType: ContentType.Json,
148
+ status: 201,
149
+ })
150
+ .setRetryAttempts(this.config, requestConfig)
151
+ .setRetryDelayMs(this.config, requestConfig)
152
+ .setResponseValidation(this.config, requestConfig)
153
+ .addHeaderParam({ key: 'Content-Type', value: 'application/json' })
154
+ .addBody(body)
155
+ .build();
156
+ return this.client.call<SlackInstallation>(request);
157
+ }
158
+
159
+ /**
160
+ * Initiates the installation flow for a slack integration. This is the first step in a multi-step installation process where user authorization or external service configuration may be required.
161
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
162
+ * @returns {Promise<HttpResponse<SlackStartInstallResponseContent>>} Created
163
+ */
164
+ async startSlackInstallation(
165
+ body: SlackStartInstall,
166
+ requestConfig?: RequestConfig,
167
+ ): Promise<HttpResponse<SlackStartInstallResponseContent>> {
168
+ const request = new RequestBuilder()
169
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
170
+ .setConfig(this.config)
171
+ .setMethod('POST')
172
+ .setPath('/integrations/slack/installations/start')
173
+ .setRequestSchema(slackStartInstallRequest)
174
+ .addAccessTokenAuth(this.config.token, 'Bearer')
175
+ .setRequestContentType(ContentType.Json)
176
+ .addResponse({
177
+ schema: slackStartInstallResponseContentResponse,
178
+ contentType: ContentType.Json,
179
+ status: 201,
180
+ })
181
+ .setRetryAttempts(this.config, requestConfig)
182
+ .setRetryDelayMs(this.config, requestConfig)
183
+ .setResponseValidation(this.config, requestConfig)
184
+ .addHeaderParam({ key: 'Content-Type', value: 'application/json' })
185
+ .addBody(body)
186
+ .build();
187
+ return this.client.call<SlackStartInstallResponseContent>(request);
188
+ }
189
+
190
+ /**
191
+ * Creates a new installation of a templates integration for a user. This endpoint is used when an integration needs to be set up with user-specific credentials or configuration.
192
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
193
+ * @returns {Promise<HttpResponse<TemplatesInstallation>>} Created
194
+ */
195
+ async saveTemplatesInstallation(
196
+ body: TemplatesInstallation,
197
+ requestConfig?: RequestConfig,
198
+ ): Promise<HttpResponse<TemplatesInstallation>> {
199
+ const request = new RequestBuilder()
200
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
201
+ .setConfig(this.config)
202
+ .setMethod('POST')
203
+ .setPath('/integrations/templates/installations')
204
+ .setRequestSchema(templatesInstallationRequest)
205
+ .addAccessTokenAuth(this.config.token, 'Bearer')
206
+ .setRequestContentType(ContentType.Json)
207
+ .addResponse({
208
+ schema: templatesInstallationResponse,
209
+ contentType: ContentType.Json,
210
+ status: 201,
211
+ })
212
+ .setRetryAttempts(this.config, requestConfig)
213
+ .setRetryDelayMs(this.config, requestConfig)
214
+ .setResponseValidation(this.config, requestConfig)
215
+ .addHeaderParam({ key: 'Content-Type', value: 'application/json' })
216
+ .addBody(body)
217
+ .build();
218
+ return this.client.call<TemplatesInstallation>(request);
219
+ }
220
+
221
+ /**
222
+ * Creates a new installation of a web_push integration for a user. This endpoint is used when an integration needs to be set up with user-specific credentials or configuration.
223
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
224
+ * @returns {Promise<HttpResponse<WebPushTokenPayload>>} Created
225
+ */
226
+ async saveWebPushInstallation(
227
+ body: WebPushTokenPayload,
228
+ requestConfig?: RequestConfig,
229
+ ): Promise<HttpResponse<WebPushTokenPayload>> {
230
+ const request = new RequestBuilder()
231
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
232
+ .setConfig(this.config)
233
+ .setMethod('POST')
234
+ .setPath('/integrations/web_push/installations')
235
+ .setRequestSchema(webPushTokenPayloadRequest)
236
+ .addAccessTokenAuth(this.config.token, 'Bearer')
237
+ .setRequestContentType(ContentType.Json)
238
+ .addResponse({
239
+ schema: webPushTokenPayloadResponse,
240
+ contentType: ContentType.Json,
241
+ status: 201,
242
+ })
243
+ .setRetryAttempts(this.config, requestConfig)
244
+ .setRetryDelayMs(this.config, requestConfig)
245
+ .setResponseValidation(this.config, requestConfig)
246
+ .addHeaderParam({ key: 'Content-Type', value: 'application/json' })
247
+ .addBody(body)
248
+ .build();
249
+ return this.client.call<WebPushTokenPayload>(request);
250
+ }
251
+
252
+ /**
253
+ * Initiates the installation flow for a web_push integration. This is the first step in a multi-step installation process where user authorization or external service configuration may be required.
254
+ * @param {RequestConfig} requestConfig - (Optional) The request configuration for retry and validation.
255
+ * @returns {Promise<HttpResponse<WebPushStartInstallationResponse>>} Created
256
+ */
257
+ async startWebPushInstallation(
258
+ requestConfig?: RequestConfig,
259
+ ): Promise<HttpResponse<WebPushStartInstallationResponse>> {
260
+ const request = new RequestBuilder()
261
+ .setBaseUrl(requestConfig?.baseUrl || this.config.baseUrl || this.config.environment || Environment.DEFAULT)
262
+ .setConfig(this.config)
263
+ .setMethod('POST')
264
+ .setPath('/integrations/web_push/installations/start')
265
+ .setRequestSchema(z.any())
266
+ .addAccessTokenAuth(this.config.token, 'Bearer')
267
+ .setRequestContentType(ContentType.Json)
268
+ .addResponse({
269
+ schema: webPushStartInstallationResponseResponse,
270
+ contentType: ContentType.Json,
271
+ status: 201,
272
+ })
273
+ .setRetryAttempts(this.config, requestConfig)
274
+ .setRetryDelayMs(this.config, requestConfig)
275
+ .setResponseValidation(this.config, requestConfig)
276
+ .build();
277
+ return this.client.call<WebPushStartInstallationResponse>(request);
278
+ }
279
+ }
@@ -0,0 +1,75 @@
1
+ import { z } from 'zod';
2
+
3
+ /**
4
+ * The shape of the model inside the application code - what the users use
5
+ */
6
+ export const authedUser = z.lazy(() => {
7
+ return z.object({
8
+ accessToken: z.string().optional(),
9
+ expiresIn: z.number().optional(),
10
+ id: z.string(),
11
+ refreshToken: z.string().optional(),
12
+ scope: z.string().optional(),
13
+ tokenType: z.string().optional(),
14
+ });
15
+ });
16
+
17
+ /**
18
+ *
19
+ * @typedef {AuthedUser} authedUser
20
+ * @property {string}
21
+ * @property {number}
22
+ * @property {string}
23
+ * @property {string}
24
+ * @property {string}
25
+ * @property {string}
26
+ */
27
+ export type AuthedUser = z.infer<typeof authedUser>;
28
+
29
+ /**
30
+ * The shape of the model mapping from the api schema into the application shape.
31
+ * Is equal to application shape if all property names match the api schema
32
+ */
33
+ export const authedUserResponse = z.lazy(() => {
34
+ return z
35
+ .object({
36
+ access_token: z.string().optional(),
37
+ expires_in: z.number().optional(),
38
+ id: z.string(),
39
+ refresh_token: z.string().optional(),
40
+ scope: z.string().optional(),
41
+ token_type: z.string().optional(),
42
+ })
43
+ .transform((data) => ({
44
+ accessToken: data['access_token'],
45
+ expiresIn: data['expires_in'],
46
+ id: data['id'],
47
+ refreshToken: data['refresh_token'],
48
+ scope: data['scope'],
49
+ tokenType: data['token_type'],
50
+ }));
51
+ });
52
+
53
+ /**
54
+ * The shape of the model mapping from the application shape into the api schema.
55
+ * Is equal to application shape if all property names match the api schema
56
+ */
57
+ export const authedUserRequest = z.lazy(() => {
58
+ return z
59
+ .object({
60
+ accessToken: z.string().optional(),
61
+ expiresIn: z.number().optional(),
62
+ id: z.string(),
63
+ refreshToken: z.string().optional(),
64
+ scope: z.string().optional(),
65
+ tokenType: z.string().optional(),
66
+ })
67
+ .transform((data) => ({
68
+ access_token: data['accessToken'],
69
+ expires_in: data['expiresIn'],
70
+ id: data['id'],
71
+ refresh_token: data['refreshToken'],
72
+ scope: data['scope'],
73
+ token_type: data['tokenType'],
74
+ }));
75
+ });
@@ -0,0 +1,63 @@
1
+ import { z } from 'zod';
2
+
3
+ /**
4
+ * The shape of the model inside the application code - what the users use
5
+ */
6
+ export const banner = z.lazy(() => {
7
+ return z.object({
8
+ backgroundColor: z.string(),
9
+ backgroundOpacity: z.number().optional(),
10
+ fontSize: z.string(),
11
+ textColor: z.string(),
12
+ });
13
+ });
14
+
15
+ /**
16
+ *
17
+ * @typedef {Banner} banner
18
+ * @property {string}
19
+ * @property {number}
20
+ * @property {string}
21
+ * @property {string}
22
+ */
23
+ export type Banner = z.infer<typeof banner>;
24
+
25
+ /**
26
+ * The shape of the model mapping from the api schema into the application shape.
27
+ * Is equal to application shape if all property names match the api schema
28
+ */
29
+ export const bannerResponse = z.lazy(() => {
30
+ return z
31
+ .object({
32
+ backgroundColor: z.string(),
33
+ backgroundOpacity: z.number().optional(),
34
+ fontSize: z.string(),
35
+ textColor: z.string(),
36
+ })
37
+ .transform((data) => ({
38
+ backgroundColor: data['backgroundColor'],
39
+ backgroundOpacity: data['backgroundOpacity'],
40
+ fontSize: data['fontSize'],
41
+ textColor: data['textColor'],
42
+ }));
43
+ });
44
+
45
+ /**
46
+ * The shape of the model mapping from the application shape into the api schema.
47
+ * Is equal to application shape if all property names match the api schema
48
+ */
49
+ export const bannerRequest = z.lazy(() => {
50
+ return z
51
+ .object({
52
+ backgroundColor: z.string(),
53
+ backgroundOpacity: z.number().optional(),
54
+ fontSize: z.string(),
55
+ textColor: z.string(),
56
+ })
57
+ .transform((data) => ({
58
+ backgroundColor: data['backgroundColor'],
59
+ backgroundOpacity: data['backgroundOpacity'],
60
+ fontSize: data['fontSize'],
61
+ textColor: data['textColor'],
62
+ }));
63
+ });
@@ -0,0 +1,45 @@
1
+ import { z } from 'zod';
2
+
3
+ /**
4
+ * The shape of the model inside the application code - what the users use
5
+ */
6
+ export const defaultHover = z.lazy(() => {
7
+ return z.object({
8
+ backgroundColor: z.string(),
9
+ });
10
+ });
11
+
12
+ /**
13
+ *
14
+ * @typedef {DefaultHover} defaultHover
15
+ * @property {string}
16
+ */
17
+ export type DefaultHover = z.infer<typeof defaultHover>;
18
+
19
+ /**
20
+ * The shape of the model mapping from the api schema into the application shape.
21
+ * Is equal to application shape if all property names match the api schema
22
+ */
23
+ export const defaultHoverResponse = z.lazy(() => {
24
+ return z
25
+ .object({
26
+ backgroundColor: z.string(),
27
+ })
28
+ .transform((data) => ({
29
+ backgroundColor: data['backgroundColor'],
30
+ }));
31
+ });
32
+
33
+ /**
34
+ * The shape of the model mapping from the application shape into the api schema.
35
+ * Is equal to application shape if all property names match the api schema
36
+ */
37
+ export const defaultHoverRequest = z.lazy(() => {
38
+ return z
39
+ .object({
40
+ backgroundColor: z.string(),
41
+ })
42
+ .transform((data) => ({
43
+ backgroundColor: data['backgroundColor'],
44
+ }));
45
+ });
@@ -0,0 +1,45 @@
1
+ import { z } from 'zod';
2
+
3
+ /**
4
+ * The shape of the model inside the application code - what the users use
5
+ */
6
+ export const defaultState = z.lazy(() => {
7
+ return z.object({
8
+ color: z.string(),
9
+ });
10
+ });
11
+
12
+ /**
13
+ *
14
+ * @typedef {DefaultState} defaultState
15
+ * @property {string}
16
+ */
17
+ export type DefaultState = z.infer<typeof defaultState>;
18
+
19
+ /**
20
+ * The shape of the model mapping from the api schema into the application shape.
21
+ * Is equal to application shape if all property names match the api schema
22
+ */
23
+ export const defaultStateResponse = z.lazy(() => {
24
+ return z
25
+ .object({
26
+ color: z.string(),
27
+ })
28
+ .transform((data) => ({
29
+ color: data['color'],
30
+ }));
31
+ });
32
+
33
+ /**
34
+ * The shape of the model mapping from the application shape into the api schema.
35
+ * Is equal to application shape if all property names match the api schema
36
+ */
37
+ export const defaultStateRequest = z.lazy(() => {
38
+ return z
39
+ .object({
40
+ color: z.string(),
41
+ })
42
+ .transform((data) => ({
43
+ color: data['color'],
44
+ }));
45
+ });
@@ -0,0 +1,90 @@
1
+ import { z } from 'zod';
2
+
3
+ import { DefaultHover, defaultHover, defaultHoverRequest, defaultHoverResponse } from './default-hover.js';
4
+ import { DefaultState, defaultState, defaultStateRequest, defaultStateResponse } from './default-state.js';
5
+
6
+ /**
7
+ * The shape of the model inside the application code - what the users use
8
+ */
9
+ export const default_ = z.lazy(() => {
10
+ return z.object({
11
+ backgroundColor: z.string(),
12
+ borderRadius: z.string(),
13
+ fontFamily: z.string(),
14
+ fontSize: z.string(),
15
+ hover: defaultHover.optional(),
16
+ margin: z.string(),
17
+ state: defaultState.optional(),
18
+ textColor: z.string(),
19
+ });
20
+ });
21
+
22
+ /**
23
+ *
24
+ * @typedef {Default_} default_
25
+ * @property {string}
26
+ * @property {string}
27
+ * @property {string}
28
+ * @property {string}
29
+ * @property {DefaultHover}
30
+ * @property {string}
31
+ * @property {DefaultState}
32
+ * @property {string}
33
+ */
34
+ export type Default_ = z.infer<typeof default_>;
35
+
36
+ /**
37
+ * The shape of the model mapping from the api schema into the application shape.
38
+ * Is equal to application shape if all property names match the api schema
39
+ */
40
+ export const defaultResponse = z.lazy(() => {
41
+ return z
42
+ .object({
43
+ backgroundColor: z.string(),
44
+ borderRadius: z.string(),
45
+ fontFamily: z.string(),
46
+ fontSize: z.string(),
47
+ hover: defaultHoverResponse.optional(),
48
+ margin: z.string(),
49
+ state: defaultStateResponse.optional(),
50
+ textColor: z.string(),
51
+ })
52
+ .transform((data) => ({
53
+ backgroundColor: data['backgroundColor'],
54
+ borderRadius: data['borderRadius'],
55
+ fontFamily: data['fontFamily'],
56
+ fontSize: data['fontSize'],
57
+ hover: data['hover'],
58
+ margin: data['margin'],
59
+ state: data['state'],
60
+ textColor: data['textColor'],
61
+ }));
62
+ });
63
+
64
+ /**
65
+ * The shape of the model mapping from the application shape into the api schema.
66
+ * Is equal to application shape if all property names match the api schema
67
+ */
68
+ export const defaultRequest = z.lazy(() => {
69
+ return z
70
+ .object({
71
+ backgroundColor: z.string(),
72
+ borderRadius: z.string(),
73
+ fontFamily: z.string(),
74
+ fontSize: z.string(),
75
+ hover: defaultHoverRequest.optional(),
76
+ margin: z.string(),
77
+ state: defaultStateRequest.optional(),
78
+ textColor: z.string(),
79
+ })
80
+ .transform((data) => ({
81
+ backgroundColor: data['backgroundColor'],
82
+ borderRadius: data['borderRadius'],
83
+ fontFamily: data['fontFamily'],
84
+ fontSize: data['fontSize'],
85
+ hover: data['hover'],
86
+ margin: data['margin'],
87
+ state: data['state'],
88
+ textColor: data['textColor'],
89
+ }));
90
+ });
@@ -0,0 +1,57 @@
1
+ import { z } from 'zod';
2
+
3
+ /**
4
+ * The shape of the model inside the application code - what the users use
5
+ */
6
+ export const dialog = z.lazy(() => {
7
+ return z.object({
8
+ accentColor: z.string(),
9
+ backgroundColor: z.string(),
10
+ textColor: z.string(),
11
+ });
12
+ });
13
+
14
+ /**
15
+ *
16
+ * @typedef {Dialog} dialog
17
+ * @property {string}
18
+ * @property {string}
19
+ * @property {string}
20
+ */
21
+ export type Dialog = z.infer<typeof dialog>;
22
+
23
+ /**
24
+ * The shape of the model mapping from the api schema into the application shape.
25
+ * Is equal to application shape if all property names match the api schema
26
+ */
27
+ export const dialogResponse = z.lazy(() => {
28
+ return z
29
+ .object({
30
+ accentColor: z.string(),
31
+ backgroundColor: z.string(),
32
+ textColor: z.string(),
33
+ })
34
+ .transform((data) => ({
35
+ accentColor: data['accentColor'],
36
+ backgroundColor: data['backgroundColor'],
37
+ textColor: data['textColor'],
38
+ }));
39
+ });
40
+
41
+ /**
42
+ * The shape of the model mapping from the application shape into the api schema.
43
+ * Is equal to application shape if all property names match the api schema
44
+ */
45
+ export const dialogRequest = z.lazy(() => {
46
+ return z
47
+ .object({
48
+ accentColor: z.string(),
49
+ backgroundColor: z.string(),
50
+ textColor: z.string(),
51
+ })
52
+ .transform((data) => ({
53
+ accentColor: data['accentColor'],
54
+ backgroundColor: data['backgroundColor'],
55
+ textColor: data['textColor'],
56
+ }));
57
+ });