moonbase-sdk 0.1.0.pre.alpha.2 → 0.1.0.pre.alpha.3

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 (416) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +27 -59
  4. data/lib/moonbase/client.rb +41 -37
  5. data/lib/moonbase/internal/cursor_page.rb +2 -2
  6. data/lib/moonbase/internal/transport/base_client.rb +1 -1
  7. data/lib/moonbase/internal/transport/pooled_net_requester.rb +1 -9
  8. data/lib/moonbase/internal/type/array_of.rb +1 -0
  9. data/lib/moonbase/internal/type/base_model.rb +4 -9
  10. data/lib/moonbase/internal/type/converter.rb +27 -0
  11. data/lib/moonbase/internal/type/hash_of.rb +1 -0
  12. data/lib/moonbase/internal/type/union.rb +25 -23
  13. data/lib/moonbase/internal/util.rb +1 -1
  14. data/lib/moonbase/models/activity.rb +20 -1112
  15. data/lib/moonbase/models/activity_call_occurred.rb +42 -0
  16. data/lib/moonbase/models/activity_form_submitted.rb +46 -0
  17. data/lib/moonbase/models/activity_inbox_message_sent.rb +42 -0
  18. data/lib/moonbase/models/activity_item_created.rb +46 -0
  19. data/lib/moonbase/models/activity_item_mentioned.rb +63 -0
  20. data/lib/moonbase/models/activity_item_merged.rb +64 -0
  21. data/lib/moonbase/models/activity_meeting_held.rb +42 -0
  22. data/lib/moonbase/models/activity_meeting_scheduled.rb +42 -0
  23. data/lib/moonbase/models/activity_note_created.rb +62 -0
  24. data/lib/moonbase/models/activity_program_message_bounced.rb +71 -0
  25. data/lib/moonbase/models/activity_program_message_clicked.rb +71 -0
  26. data/lib/moonbase/models/activity_program_message_complained.rb +55 -0
  27. data/lib/moonbase/models/activity_program_message_failed.rb +63 -0
  28. data/lib/moonbase/models/activity_program_message_opened.rb +54 -0
  29. data/lib/moonbase/models/activity_program_message_sent.rb +62 -0
  30. data/lib/moonbase/models/activity_program_message_shielded.rb +64 -0
  31. data/lib/moonbase/models/activity_program_message_unsubscribed.rb +63 -0
  32. data/lib/moonbase/models/address.rb +22 -52
  33. data/lib/moonbase/models/attendee.rb +19 -45
  34. data/lib/moonbase/models/boolean_field.rb +119 -0
  35. data/lib/moonbase/models/boolean_value.rb +4 -4
  36. data/lib/moonbase/models/call.rb +48 -68
  37. data/lib/moonbase/models/call_create_params.rb +115 -36
  38. data/lib/moonbase/models/call_upsert_params.rb +236 -0
  39. data/lib/moonbase/models/choice_field.rb +128 -0
  40. data/lib/moonbase/models/choice_field_option.rb +38 -0
  41. data/lib/moonbase/models/choice_value.rb +25 -0
  42. data/lib/moonbase/models/choice_value_param.rb +41 -0
  43. data/lib/moonbase/models/collection.rb +21 -41
  44. data/lib/moonbase/models/collection_pointer.rb +35 -0
  45. data/lib/moonbase/models/collection_retrieve_params.rb +2 -7
  46. data/lib/moonbase/models/collections/item_create_params.rb +24 -0
  47. data/lib/moonbase/models/collections/item_delete_params.rb +22 -0
  48. data/lib/moonbase/models/collections/item_list_params.rb +48 -0
  49. data/lib/moonbase/models/collections/item_retrieve_params.rb +22 -0
  50. data/lib/moonbase/models/collections/item_update_params.rb +70 -0
  51. data/lib/moonbase/models/collections/item_upsert_params.rb +73 -0
  52. data/lib/moonbase/models/date_field.rb +119 -0
  53. data/lib/moonbase/models/date_value.rb +4 -4
  54. data/lib/moonbase/models/datetime_field.rb +119 -0
  55. data/lib/moonbase/models/datetime_value.rb +4 -4
  56. data/lib/moonbase/models/domain_field.rb +119 -0
  57. data/lib/moonbase/models/domain_value.rb +6 -4
  58. data/lib/moonbase/models/email_field.rb +119 -0
  59. data/lib/moonbase/models/email_message.rb +81 -162
  60. data/lib/moonbase/models/email_value.rb +6 -4
  61. data/lib/moonbase/models/endpoint.rb +96 -0
  62. data/lib/moonbase/models/error.rb +5 -0
  63. data/lib/moonbase/models/field.rb +44 -277
  64. data/lib/moonbase/models/field_value.rb +5 -5
  65. data/lib/moonbase/models/field_value_param.rb +174 -0
  66. data/lib/moonbase/models/float_field.rb +119 -0
  67. data/lib/moonbase/models/float_value.rb +4 -4
  68. data/lib/moonbase/models/form.rb +18 -45
  69. data/lib/moonbase/models/form_list_params.rb +1 -19
  70. data/lib/moonbase/models/form_retrieve_params.rb +1 -22
  71. data/lib/moonbase/models/formatted_text.rb +19 -0
  72. data/lib/moonbase/models/funnel.rb +34 -0
  73. data/lib/moonbase/models/funnel_step.rb +49 -28
  74. data/lib/moonbase/models/funnel_step_value.rb +25 -0
  75. data/lib/moonbase/models/funnel_step_value_param.rb +41 -0
  76. data/lib/moonbase/models/geo_field.rb +119 -0
  77. data/lib/moonbase/models/geo_value.rb +10 -4
  78. data/lib/moonbase/models/inbox.rb +13 -38
  79. data/lib/moonbase/models/inbox_conversation.rb +77 -100
  80. data/lib/moonbase/models/inbox_conversation_list_params.rb +48 -10
  81. data/lib/moonbase/models/inbox_conversation_retrieve_params.rb +6 -7
  82. data/lib/moonbase/models/inbox_list_params.rb +17 -1
  83. data/lib/moonbase/models/inbox_message_list_params.rb +43 -14
  84. data/lib/moonbase/models/integer_field.rb +120 -0
  85. data/lib/moonbase/models/integer_value.rb +4 -4
  86. data/lib/moonbase/models/item.rb +4 -32
  87. data/lib/moonbase/models/item_pointer.rb +35 -0
  88. data/lib/moonbase/models/meeting.rb +40 -74
  89. data/lib/moonbase/models/monetary_field.rb +119 -0
  90. data/lib/moonbase/models/monetary_value.rb +29 -19
  91. data/lib/moonbase/models/moonbase_file.rb +25 -44
  92. data/lib/moonbase/models/multi_line_text_field.rb +119 -0
  93. data/lib/moonbase/models/multi_line_text_value.rb +10 -4
  94. data/lib/moonbase/models/note.rb +18 -37
  95. data/lib/moonbase/models/organizer.rb +19 -42
  96. data/lib/moonbase/models/percentage_field.rb +119 -0
  97. data/lib/moonbase/models/percentage_value.rb +10 -4
  98. data/lib/moonbase/models/pointer.rb +26 -0
  99. data/lib/moonbase/models/program.rb +56 -77
  100. data/lib/moonbase/models/{program_message_create_response.rb → program_message.rb} +9 -28
  101. data/lib/moonbase/models/{program_message_create_params.rb → program_message_send_params.rb} +5 -5
  102. data/lib/moonbase/models/program_template.rb +16 -41
  103. data/lib/moonbase/models/program_template_retrieve_params.rb +1 -3
  104. data/lib/moonbase/models/relation_field.rb +143 -0
  105. data/lib/moonbase/models/relation_value.rb +6 -10
  106. data/lib/moonbase/models/relation_value_param.rb +41 -0
  107. data/lib/moonbase/models/single_line_text_field.rb +119 -0
  108. data/lib/moonbase/models/single_line_text_value.rb +10 -4
  109. data/lib/moonbase/models/social_linked_in_field.rb +119 -0
  110. data/lib/moonbase/models/social_linked_in_value.rb +26 -15
  111. data/lib/moonbase/models/social_x_field.rb +119 -0
  112. data/lib/moonbase/models/social_x_value.rb +32 -15
  113. data/lib/moonbase/models/stage_field.rb +127 -0
  114. data/lib/moonbase/models/subscription.rb +61 -0
  115. data/lib/moonbase/models/tagset.rb +19 -38
  116. data/lib/moonbase/models/telephone_number.rb +10 -4
  117. data/lib/moonbase/models/telephone_number_field.rb +119 -0
  118. data/lib/moonbase/models/url_field.rb +119 -0
  119. data/lib/moonbase/models/url_value.rb +13 -6
  120. data/lib/moonbase/models/value.rb +5 -5
  121. data/lib/moonbase/models/value_param.rb +170 -0
  122. data/lib/moonbase/models/view.rb +25 -39
  123. data/lib/moonbase/models/webhook_endpoint_create_params.rb +96 -0
  124. data/lib/moonbase/models/{item_delete_params.rb → webhook_endpoint_delete_params.rb} +2 -2
  125. data/lib/moonbase/models/webhook_endpoint_list_params.rb +46 -0
  126. data/lib/moonbase/models/{item_retrieve_params.rb → webhook_endpoint_retrieve_params.rb} +2 -2
  127. data/lib/moonbase/models/webhook_endpoint_update_params.rb +104 -0
  128. data/lib/moonbase/models.rb +115 -11
  129. data/lib/moonbase/resources/activities.rb +2 -2
  130. data/lib/moonbase/resources/calls.rb +51 -5
  131. data/lib/moonbase/resources/collections/fields.rb +1 -1
  132. data/lib/moonbase/resources/collections/items.rb +202 -0
  133. data/lib/moonbase/resources/collections.rb +5 -4
  134. data/lib/moonbase/resources/forms.rb +3 -12
  135. data/lib/moonbase/resources/funnels.rb +14 -0
  136. data/lib/moonbase/resources/inbox_conversations.rb +4 -4
  137. data/lib/moonbase/resources/inbox_messages.rb +2 -4
  138. data/lib/moonbase/resources/inboxes.rb +4 -2
  139. data/lib/moonbase/resources/program_messages.rb +7 -7
  140. data/lib/moonbase/resources/webhook_endpoints.rb +138 -0
  141. data/lib/moonbase/version.rb +1 -1
  142. data/lib/moonbase.rb +68 -9
  143. data/rbi/moonbase/client.rbi +29 -26
  144. data/rbi/moonbase/errors.rbi +2 -2
  145. data/rbi/moonbase/internal/transport/base_client.rbi +1 -1
  146. data/rbi/moonbase/internal/type/converter.rbi +54 -0
  147. data/rbi/moonbase/internal/type/union.rbi +9 -2
  148. data/rbi/moonbase/models/activity.rbi +17 -1950
  149. data/rbi/moonbase/models/activity_call_occurred.rbi +65 -0
  150. data/rbi/moonbase/models/activity_form_submitted.rbi +67 -0
  151. data/rbi/moonbase/models/activity_inbox_message_sent.rbi +65 -0
  152. data/rbi/moonbase/models/activity_item_created.rbi +67 -0
  153. data/rbi/moonbase/models/activity_item_mentioned.rbi +91 -0
  154. data/rbi/moonbase/models/activity_item_merged.rbi +93 -0
  155. data/rbi/moonbase/models/activity_meeting_held.rbi +65 -0
  156. data/rbi/moonbase/models/activity_meeting_scheduled.rbi +65 -0
  157. data/rbi/moonbase/models/activity_note_created.rbi +91 -0
  158. data/rbi/moonbase/models/activity_program_message_bounced.rbi +105 -0
  159. data/rbi/moonbase/models/activity_program_message_clicked.rbi +104 -0
  160. data/rbi/moonbase/models/activity_program_message_complained.rbi +82 -0
  161. data/rbi/moonbase/models/activity_program_message_failed.rbi +93 -0
  162. data/rbi/moonbase/models/activity_program_message_opened.rbi +81 -0
  163. data/rbi/moonbase/models/activity_program_message_sent.rbi +92 -0
  164. data/rbi/moonbase/models/activity_program_message_shielded.rbi +95 -0
  165. data/rbi/moonbase/models/activity_program_message_unsubscribed.rbi +93 -0
  166. data/rbi/moonbase/models/address.rbi +28 -79
  167. data/rbi/moonbase/models/attendee.rbi +23 -63
  168. data/rbi/moonbase/models/boolean_field.rbi +150 -0
  169. data/rbi/moonbase/models/boolean_value.rbi +4 -6
  170. data/rbi/moonbase/models/call.rbi +54 -84
  171. data/rbi/moonbase/models/call_create_params.rbi +176 -47
  172. data/rbi/moonbase/models/call_upsert_params.rbi +392 -0
  173. data/rbi/moonbase/models/choice_field.rbi +160 -0
  174. data/rbi/moonbase/models/choice_field_option.rbi +46 -0
  175. data/rbi/moonbase/models/choice_value.rbi +41 -0
  176. data/rbi/moonbase/models/choice_value_param.rbi +62 -0
  177. data/rbi/moonbase/models/collection.rbi +48 -64
  178. data/rbi/moonbase/models/collection_pointer.rbi +43 -0
  179. data/rbi/moonbase/models/collection_retrieve_params.rbi +2 -9
  180. data/rbi/moonbase/models/collections/item_create_params.rbi +198 -0
  181. data/rbi/moonbase/models/collections/item_delete_params.rbi +40 -0
  182. data/rbi/moonbase/models/collections/item_list_params.rbi +83 -0
  183. data/rbi/moonbase/models/collections/item_retrieve_params.rbi +40 -0
  184. data/rbi/moonbase/models/collections/item_update_params.rbi +323 -0
  185. data/rbi/moonbase/models/collections/item_upsert_params.rbi +477 -0
  186. data/rbi/moonbase/models/date_field.rbi +148 -0
  187. data/rbi/moonbase/models/date_value.rbi +4 -4
  188. data/rbi/moonbase/models/datetime_field.rbi +150 -0
  189. data/rbi/moonbase/models/datetime_value.rbi +4 -4
  190. data/rbi/moonbase/models/domain_field.rbi +150 -0
  191. data/rbi/moonbase/models/domain_value.rbi +9 -4
  192. data/rbi/moonbase/models/email_field.rbi +150 -0
  193. data/rbi/moonbase/models/email_message.rbi +95 -233
  194. data/rbi/moonbase/models/email_value.rbi +9 -4
  195. data/rbi/moonbase/models/endpoint.rbi +121 -0
  196. data/rbi/moonbase/models/error.rbi +4 -0
  197. data/rbi/moonbase/models/field.rbi +28 -460
  198. data/rbi/moonbase/models/field_value.rbi +3 -3
  199. data/rbi/moonbase/models/field_value_param.rbi +237 -0
  200. data/rbi/moonbase/models/float_field.rbi +150 -0
  201. data/rbi/moonbase/models/float_value.rbi +4 -4
  202. data/rbi/moonbase/models/form.rbi +21 -72
  203. data/rbi/moonbase/models/form_list_params.rbi +0 -43
  204. data/rbi/moonbase/models/form_retrieve_params.rbi +4 -55
  205. data/rbi/moonbase/models/formatted_text.rbi +32 -0
  206. data/rbi/moonbase/models/funnel.rbi +48 -0
  207. data/rbi/moonbase/models/funnel_step.rbi +60 -32
  208. data/rbi/moonbase/models/funnel_step_value.rbi +39 -0
  209. data/rbi/moonbase/models/funnel_step_value_param.rbi +57 -0
  210. data/rbi/moonbase/models/geo_field.rbi +148 -0
  211. data/rbi/moonbase/models/geo_value.rbi +11 -4
  212. data/rbi/moonbase/models/inbox.rbi +19 -61
  213. data/rbi/moonbase/models/inbox_conversation.rbi +93 -161
  214. data/rbi/moonbase/models/inbox_conversation_list_params.rbi +135 -15
  215. data/rbi/moonbase/models/inbox_conversation_retrieve_params.rbi +11 -6
  216. data/rbi/moonbase/models/inbox_list_params.rbi +28 -0
  217. data/rbi/moonbase/models/inbox_message_list_params.rbi +116 -20
  218. data/rbi/moonbase/models/integer_field.rbi +152 -0
  219. data/rbi/moonbase/models/integer_value.rbi +4 -4
  220. data/rbi/moonbase/models/item.rbi +52 -57
  221. data/rbi/moonbase/models/item_pointer.rbi +54 -0
  222. data/rbi/moonbase/models/meeting.rbi +52 -113
  223. data/rbi/moonbase/models/monetary_field.rbi +150 -0
  224. data/rbi/moonbase/models/monetary_value.rbi +34 -27
  225. data/rbi/moonbase/models/moonbase_file.rbi +23 -60
  226. data/rbi/moonbase/models/multi_line_text_field.rbi +155 -0
  227. data/rbi/moonbase/models/multi_line_text_value.rbi +11 -4
  228. data/rbi/moonbase/models/note.rbi +23 -60
  229. data/rbi/moonbase/models/organizer.rbi +23 -60
  230. data/rbi/moonbase/models/percentage_field.rbi +151 -0
  231. data/rbi/moonbase/models/percentage_value.rbi +11 -4
  232. data/rbi/moonbase/models/pointer.rbi +32 -0
  233. data/rbi/moonbase/models/program.rbi +70 -137
  234. data/rbi/moonbase/models/{program_message_create_response.rbi → program_message.rbi} +8 -49
  235. data/rbi/moonbase/models/{program_message_create_params.rbi → program_message_send_params.rbi} +7 -12
  236. data/rbi/moonbase/models/program_template.rbi +25 -64
  237. data/rbi/moonbase/models/relation_field.rbi +184 -0
  238. data/rbi/moonbase/models/relation_value.rbi +11 -11
  239. data/rbi/moonbase/models/relation_value_param.rbi +60 -0
  240. data/rbi/moonbase/models/single_line_text_field.rbi +155 -0
  241. data/rbi/moonbase/models/single_line_text_value.rbi +11 -4
  242. data/rbi/moonbase/models/social_linked_in_field.rbi +155 -0
  243. data/rbi/moonbase/models/social_linked_in_value.rbi +30 -23
  244. data/rbi/moonbase/models/social_x_field.rbi +150 -0
  245. data/rbi/moonbase/models/social_x_value.rbi +35 -23
  246. data/rbi/moonbase/models/stage_field.rbi +161 -0
  247. data/rbi/moonbase/models/subscription.rbi +155 -0
  248. data/rbi/moonbase/models/tagset.rbi +22 -62
  249. data/rbi/moonbase/models/telephone_number.rbi +11 -6
  250. data/rbi/moonbase/models/telephone_number_field.rbi +158 -0
  251. data/rbi/moonbase/models/url_field.rbi +148 -0
  252. data/rbi/moonbase/models/url_value.rbi +15 -6
  253. data/rbi/moonbase/models/value.rbi +2 -2
  254. data/rbi/moonbase/models/value_param.rbi +221 -0
  255. data/rbi/moonbase/models/view.rbi +28 -60
  256. data/rbi/moonbase/models/webhook_endpoint_create_params.rbi +269 -0
  257. data/rbi/moonbase/models/{item_retrieve_params.rbi → webhook_endpoint_delete_params.rbi} +5 -2
  258. data/rbi/moonbase/models/webhook_endpoint_list_params.rbi +81 -0
  259. data/rbi/moonbase/models/{item_delete_params.rbi → webhook_endpoint_retrieve_params.rbi} +5 -2
  260. data/rbi/moonbase/models/webhook_endpoint_update_params.rbi +294 -0
  261. data/rbi/moonbase/models.rbi +121 -11
  262. data/rbi/moonbase/resources/calls.rbi +56 -5
  263. data/rbi/moonbase/resources/collections/fields.rbi +1 -1
  264. data/rbi/moonbase/resources/collections/items.rbi +358 -0
  265. data/rbi/moonbase/resources/collections.rbi +4 -2
  266. data/rbi/moonbase/resources/forms.rbi +0 -8
  267. data/rbi/moonbase/resources/funnels.rbi +12 -0
  268. data/rbi/moonbase/resources/inbox_conversations.rbi +4 -5
  269. data/rbi/moonbase/resources/inbox_messages.rbi +2 -6
  270. data/rbi/moonbase/resources/inboxes.rbi +2 -0
  271. data/rbi/moonbase/resources/program_messages.rbi +3 -3
  272. data/rbi/moonbase/resources/webhook_endpoints.rbi +114 -0
  273. data/sig/moonbase/client.rbs +16 -14
  274. data/sig/moonbase/internal/transport/base_client.rbs +1 -1
  275. data/sig/moonbase/internal/type/converter.rbs +17 -0
  276. data/sig/moonbase/internal/type/union.rbs +2 -2
  277. data/sig/moonbase/models/activity.rbs +17 -966
  278. data/sig/moonbase/models/activity_call_occurred.rbs +35 -0
  279. data/sig/moonbase/models/activity_form_submitted.rbs +35 -0
  280. data/sig/moonbase/models/activity_inbox_message_sent.rbs +35 -0
  281. data/sig/moonbase/models/activity_item_created.rbs +35 -0
  282. data/sig/moonbase/models/activity_item_mentioned.rbs +45 -0
  283. data/sig/moonbase/models/activity_item_merged.rbs +45 -0
  284. data/sig/moonbase/models/activity_meeting_held.rbs +35 -0
  285. data/sig/moonbase/models/activity_meeting_scheduled.rbs +35 -0
  286. data/sig/moonbase/models/activity_note_created.rbs +45 -0
  287. data/sig/moonbase/models/activity_program_message_bounced.rbs +54 -0
  288. data/sig/moonbase/models/activity_program_message_clicked.rbs +54 -0
  289. data/sig/moonbase/models/activity_program_message_complained.rbs +40 -0
  290. data/sig/moonbase/models/activity_program_message_failed.rbs +47 -0
  291. data/sig/moonbase/models/activity_program_message_opened.rbs +40 -0
  292. data/sig/moonbase/models/activity_program_message_sent.rbs +47 -0
  293. data/sig/moonbase/models/activity_program_message_shielded.rbs +47 -0
  294. data/sig/moonbase/models/activity_program_message_unsubscribed.rbs +47 -0
  295. data/sig/moonbase/models/address.rbs +16 -43
  296. data/sig/moonbase/models/attendee.rbs +14 -31
  297. data/sig/moonbase/models/boolean_field.rbs +83 -0
  298. data/sig/moonbase/models/boolean_value.rbs +4 -4
  299. data/sig/moonbase/models/call.rbs +31 -70
  300. data/sig/moonbase/models/call_create_params.rbs +85 -38
  301. data/sig/moonbase/models/call_upsert_params.rbs +199 -0
  302. data/sig/moonbase/models/choice_field.rbs +88 -0
  303. data/sig/moonbase/models/choice_field_option.rbs +22 -0
  304. data/sig/moonbase/models/choice_value.rbs +22 -0
  305. data/sig/moonbase/models/choice_value_param.rbs +30 -0
  306. data/sig/moonbase/models/collection.rbs +13 -34
  307. data/sig/moonbase/models/collection_pointer.rbs +17 -0
  308. data/sig/moonbase/models/collection_retrieve_params.rbs +1 -2
  309. data/sig/moonbase/models/collections/item_create_params.rbs +26 -0
  310. data/sig/moonbase/models/collections/item_delete_params.rbs +25 -0
  311. data/sig/moonbase/models/collections/item_list_params.rbs +40 -0
  312. data/sig/moonbase/models/collections/item_retrieve_params.rbs +25 -0
  313. data/sig/moonbase/models/collections/item_update_params.rbs +74 -0
  314. data/sig/moonbase/models/collections/item_upsert_params.rbs +74 -0
  315. data/sig/moonbase/models/date_field.rbs +83 -0
  316. data/sig/moonbase/models/date_value.rbs +4 -4
  317. data/sig/moonbase/models/datetime_field.rbs +83 -0
  318. data/sig/moonbase/models/datetime_value.rbs +4 -4
  319. data/sig/moonbase/models/domain_field.rbs +83 -0
  320. data/sig/moonbase/models/domain_value.rbs +4 -4
  321. data/sig/moonbase/models/email_field.rbs +83 -0
  322. data/sig/moonbase/models/email_message.rbs +49 -131
  323. data/sig/moonbase/models/email_value.rbs +4 -4
  324. data/sig/moonbase/models/endpoint.rbs +68 -0
  325. data/sig/moonbase/models/field.rbs +24 -260
  326. data/sig/moonbase/models/field_value.rbs +2 -2
  327. data/sig/moonbase/models/field_value_param.rbs +109 -0
  328. data/sig/moonbase/models/float_field.rbs +83 -0
  329. data/sig/moonbase/models/float_value.rbs +4 -4
  330. data/sig/moonbase/models/form.rbs +15 -40
  331. data/sig/moonbase/models/form_list_params.rbs +1 -24
  332. data/sig/moonbase/models/form_retrieve_params.rbs +3 -26
  333. data/sig/moonbase/models/formatted_text.rbs +15 -0
  334. data/sig/moonbase/models/funnel.rbs +26 -0
  335. data/sig/moonbase/models/funnel_step.rbs +27 -18
  336. data/sig/moonbase/models/funnel_step_value.rbs +19 -0
  337. data/sig/moonbase/models/funnel_step_value_param.rbs +33 -0
  338. data/sig/moonbase/models/geo_field.rbs +83 -0
  339. data/sig/moonbase/models/geo_value.rbs +4 -4
  340. data/sig/moonbase/models/inbox.rbs +10 -33
  341. data/sig/moonbase/models/inbox_conversation.rbs +48 -82
  342. data/sig/moonbase/models/inbox_conversation_list_params.rbs +65 -8
  343. data/sig/moonbase/models/inbox_conversation_retrieve_params.rbs +4 -3
  344. data/sig/moonbase/models/inbox_list_params.rbs +24 -1
  345. data/sig/moonbase/models/inbox_message_list_params.rbs +61 -12
  346. data/sig/moonbase/models/integer_field.rbs +83 -0
  347. data/sig/moonbase/models/integer_value.rbs +4 -7
  348. data/sig/moonbase/models/item.rbs +4 -31
  349. data/sig/moonbase/models/item_pointer.rbs +26 -0
  350. data/sig/moonbase/models/meeting.rbs +22 -62
  351. data/sig/moonbase/models/monetary_field.rbs +83 -0
  352. data/sig/moonbase/models/monetary_value.rbs +9 -23
  353. data/sig/moonbase/models/moonbase_file.rbs +12 -28
  354. data/sig/moonbase/models/multi_line_text_field.rbs +83 -0
  355. data/sig/moonbase/models/multi_line_text_value.rbs +4 -4
  356. data/sig/moonbase/models/note.rbs +15 -36
  357. data/sig/moonbase/models/organizer.rbs +14 -31
  358. data/sig/moonbase/models/percentage_field.rbs +83 -0
  359. data/sig/moonbase/models/percentage_value.rbs +4 -8
  360. data/sig/moonbase/models/pointer.rbs +15 -0
  361. data/sig/moonbase/models/program.rbs +37 -78
  362. data/sig/moonbase/models/{program_message_create_response.rbs → program_message.rbs} +2 -17
  363. data/sig/moonbase/models/{program_message_create_params.rbs → program_message_send_params.rbs} +6 -6
  364. data/sig/moonbase/models/program_template.rbs +14 -37
  365. data/sig/moonbase/models/relation_field.rbs +99 -0
  366. data/sig/moonbase/models/relation_value.rbs +8 -4
  367. data/sig/moonbase/models/relation_value_param.rbs +33 -0
  368. data/sig/moonbase/models/single_line_text_field.rbs +83 -0
  369. data/sig/moonbase/models/single_line_text_value.rbs +4 -4
  370. data/sig/moonbase/models/social_linked_in_field.rbs +83 -0
  371. data/sig/moonbase/models/social_linked_in_value.rbs +9 -13
  372. data/sig/moonbase/models/social_x_field.rbs +83 -0
  373. data/sig/moonbase/models/social_x_value.rbs +9 -13
  374. data/sig/moonbase/models/stage_field.rbs +88 -0
  375. data/sig/moonbase/models/subscription.rbs +68 -0
  376. data/sig/moonbase/models/tagset.rbs +15 -38
  377. data/sig/moonbase/models/telephone_number.rbs +4 -11
  378. data/sig/moonbase/models/telephone_number_field.rbs +83 -0
  379. data/sig/moonbase/models/url_field.rbs +83 -0
  380. data/sig/moonbase/models/url_value.rbs +5 -5
  381. data/sig/moonbase/models/value.rbs +2 -2
  382. data/sig/moonbase/models/value_param.rbs +106 -0
  383. data/sig/moonbase/models/view.rbs +16 -33
  384. data/sig/moonbase/models/webhook_endpoint_create_params.rbs +111 -0
  385. data/sig/moonbase/models/{item_retrieve_params.rbs → webhook_endpoint_delete_params.rbs} +2 -2
  386. data/sig/moonbase/models/webhook_endpoint_list_params.rbs +38 -0
  387. data/sig/moonbase/models/{item_delete_params.rbs → webhook_endpoint_retrieve_params.rbs} +2 -2
  388. data/sig/moonbase/models/webhook_endpoint_update_params.rbs +124 -0
  389. data/sig/moonbase/models.rbs +116 -12
  390. data/sig/moonbase/resources/calls.rbs +18 -1
  391. data/sig/moonbase/resources/collections/fields.rbs +1 -1
  392. data/sig/moonbase/resources/collections/items.rbs +53 -0
  393. data/sig/moonbase/resources/collections.rbs +2 -0
  394. data/sig/moonbase/resources/forms.rbs +0 -2
  395. data/sig/moonbase/resources/funnels.rbs +7 -0
  396. data/sig/moonbase/resources/inbox_conversations.rbs +1 -1
  397. data/sig/moonbase/resources/inbox_messages.rbs +1 -2
  398. data/sig/moonbase/resources/inboxes.rbs +1 -0
  399. data/sig/moonbase/resources/program_messages.rbs +3 -3
  400. data/sig/moonbase/resources/webhook_endpoints.rbs +36 -0
  401. metadata +206 -29
  402. data/lib/moonbase/models/choice.rb +0 -46
  403. data/lib/moonbase/models/item_create_params.rb +0 -30
  404. data/lib/moonbase/models/item_update_params.rb +0 -61
  405. data/lib/moonbase/models/item_upsert_params.rb +0 -78
  406. data/lib/moonbase/resources/items.rb +0 -142
  407. data/rbi/moonbase/models/choice.rbi +0 -65
  408. data/rbi/moonbase/models/item_create_params.rbi +0 -135
  409. data/rbi/moonbase/models/item_update_params.rbi +0 -236
  410. data/rbi/moonbase/models/item_upsert_params.rbi +0 -338
  411. data/rbi/moonbase/resources/items.rbi +0 -234
  412. data/sig/moonbase/models/choice.rbs +0 -41
  413. data/sig/moonbase/models/item_create_params.rbs +0 -31
  414. data/sig/moonbase/models/item_update_params.rbs +0 -67
  415. data/sig/moonbase/models/item_upsert_params.rbs +0 -77
  416. data/sig/moonbase/resources/items.rbs +0 -40
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bdda12f6c92170310ea89e8a6bd1d7468f3e1269438ff41b27687ca63022eb0c
4
- data.tar.gz: 2be6f6e2d70ddc00a1ffe70d0ea392f354b1f5e0cda83b630dccfba2954ae300
3
+ metadata.gz: 004417c139bdd9c6ec043a9dde658dc67e6f098a32bb3bbef956982695798109
4
+ data.tar.gz: 3189fbe40f05177f5f49eddb00826aae96cba29df3c0bad285d5744c19f15b07
5
5
  SHA512:
6
- metadata.gz: 5196b903550ef8bbbbb43c99796402210294121ac8d04d9c9eaacb54b2468f6ee42c344d87c76df14c0cddf08adde0a4f5243a74cf194c5c1ccf8764b157ffe5
7
- data.tar.gz: 80a89212874fb24c6ca2c045467d342833a05921444b1972c168b14be95eb9d89ccedac3014c155ce421280756b066a733ce988ffb73272519bc61666f5d25bf
6
+ metadata.gz: aac86c8dc30cefd306f10561ba41657159d832fc5fc787e3cf8b6b7f9e0f98bef0e579d4bee4078c679750efcd3e1aa8a8fa3bd7b8e106c84267a1dd0cafd270
7
+ data.tar.gz: 2aff665206729f4260afbef357dab139d53f227b702ea43a19db4cd990d3ff75651873dd3ac28ef1f175d29727c7171f7f900827aa6b9317a10be17e2964a557
data/CHANGELOG.md CHANGED
@@ -1,5 +1,39 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.3 (2025-09-09)
4
+
5
+ Full Changelog: [v0.1.0-alpha.2...v0.1.0-alpha.3](https://github.com/moonbaseai/moonbase-sdk-ruby/compare/v0.1.0-alpha.2...v0.1.0-alpha.3)
6
+
7
+ ### Features
8
+
9
+ * **api:** add upsert endpoint for Calls ([49f5d8b](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/49f5d8ba47a28db59bad127bc05eac4e0f9a633f))
10
+ * **api:** example updates ([114461f](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/114461f72a1c27e3a224951d5d661fb6582629bf))
11
+ * **api:** manual updates ([42ca387](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/42ca387aef32e69ef374da891d2827e90be2dfcf))
12
+ * **api:** manual updates ([bd4f562](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/bd4f562b63b9734973f58e847705179832d96d1d))
13
+ * **api:** update api ([3c936d8](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/3c936d8ce71d916a37c04857a93ff555056e4736))
14
+ * **api:** update api ([795b44a](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/795b44a4554147f4cbccd7b351b7573a9452fe9f))
15
+ * **api:** update api ([d28791e](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/d28791ef6f7ab373bc2ae9350275ce5511f52de2))
16
+ * **api:** update api ([977698b](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/977698b4dca5b936ef1d30fc1176a4f8a75ba369))
17
+ * **api:** update api ([ce6cc96](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/ce6cc96f4d63c37cb42c82340da9896464a2fb5b))
18
+ * **api:** update examples ([6bf6d02](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/6bf6d02310d75113aa36e17d8c1e28f9843a36ac))
19
+
20
+
21
+ ### Bug Fixes
22
+
23
+ * bump sorbet version and fix new type errors from the breaking change ([3e841f1](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/3e841f1801c46fc89d153451d27447bd86872ccf))
24
+ * **internal:** ensure sorbet test always runs serially ([8bbd082](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/8bbd082008a24ad6cab5ed4db6315f36a51ab188))
25
+
26
+
27
+ ### Chores
28
+
29
+ * add json schema comment for rubocop.yml ([bad582b](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/bad582b492d24b1c29fb881579c25f14ad3caf5a))
30
+ * collect metadata from type DSL ([41b4aa2](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/41b4aa2c95ac095ade50529708937c420aa298ef))
31
+ * **internal:** increase visibility of internal helper method ([1488a31](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/1488a31652ff51db82e55817dda619ccc15af1f1))
32
+ * **internal:** update comment in script ([ea69129](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/ea691297748c28edf7f82a092347064d91b1e43e))
33
+ * **internal:** version bump ([7b29a82](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/7b29a824aee8dd442bb24a8727e68e632f0e4735))
34
+ * update @stainless-api/prism-cli to v5.15.0 ([1ec7555](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/1ec7555d115c3852f795c8a755330b004c238206))
35
+ * update contribute.md ([2cf4a7f](https://github.com/moonbaseai/moonbase-sdk-ruby/commit/2cf4a7ff9f0f8646948c08a0078bec16edf468a0))
36
+
3
37
  ## 0.1.0-alpha.2 (2025-07-20)
4
38
 
5
39
  Full Changelog: [v0.1.0-alpha.1...v0.1.0-alpha.2](https://github.com/moonbaseai/moonbase-sdk-ruby/compare/v0.1.0-alpha.1...v0.1.0-alpha.2)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "moonbase-sdk", "~> 0.1.0.pre.alpha.2"
18
+ gem "moonbase-sdk", "~> 0.1.0.pre.alpha.3"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -30,13 +30,9 @@ moonbase = Moonbase::Client.new(
30
30
  api_key: ENV["MOONBASE_API_KEY"] # This is the default and can be omitted
31
31
  )
32
32
 
33
- program_message = moonbase.program_messages.create(
34
- person: {email: "user@example.com"},
35
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
36
- custom_variables: {}
37
- )
33
+ collection = moonbase.collections.retrieve("people")
38
34
 
39
- puts(program_message.id)
35
+ puts(collection.id)
40
36
  ```
41
37
 
42
38
  ### Pagination
@@ -46,15 +42,15 @@ List methods in the Moonbase API are paginated.
46
42
  This library provides auto-paginating iterators with each list response, so you do not have to request successive pages manually:
47
43
 
48
44
  ```ruby
49
- page = moonbase.program_templates.list(limit: 20)
45
+ page = moonbase.collections.items.list("people", limit: 5)
50
46
 
51
47
  # Fetch single item from page.
52
- program_template = page.data[0]
53
- puts(program_template.id)
48
+ item = page.data[0]
49
+ puts(item.id)
54
50
 
55
51
  # Automatically fetches more pages as needed.
56
- page.auto_paging_each do |program_template|
57
- puts(program_template.id)
52
+ page.auto_paging_each do |item|
53
+ puts(item.id)
58
54
  end
59
55
  ```
60
56
 
@@ -73,11 +69,7 @@ When the library is unable to connect to the API, or if the API returns a non-su
73
69
 
74
70
  ```ruby
75
71
  begin
76
- program_message = moonbase.program_messages.create(
77
- person: {email: "user@example.com"},
78
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
79
- custom_variables: {}
80
- )
72
+ collection = moonbase.collections.retrieve("people")
81
73
  rescue Moonbase::Errors::APIConnectionError => e
82
74
  puts("The server could not be reached")
83
75
  puts(e.cause) # an underlying Exception, likely raised within `net/http`
@@ -120,12 +112,7 @@ moonbase = Moonbase::Client.new(
120
112
  )
121
113
 
122
114
  # Or, configure per-request:
123
- moonbase.program_messages.create(
124
- person: {email: "user@example.com"},
125
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
126
- custom_variables: {},
127
- request_options: {max_retries: 5}
128
- )
115
+ moonbase.collections.retrieve("people", request_options: {max_retries: 5})
129
116
  ```
130
117
 
131
118
  ### Timeouts
@@ -139,12 +126,7 @@ moonbase = Moonbase::Client.new(
139
126
  )
140
127
 
141
128
  # Or, configure per-request:
142
- moonbase.program_messages.create(
143
- person: {email: "user@example.com"},
144
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
145
- custom_variables: {},
146
- request_options: {timeout: 5}
147
- )
129
+ moonbase.collections.retrieve("people", request_options: {timeout: 5})
148
130
  ```
149
131
 
150
132
  On timeout, `Moonbase::Errors::APITimeoutError` is raised.
@@ -174,11 +156,9 @@ You can send undocumented parameters to any endpoint, and read undocumented resp
174
156
  Note: the `extra_` parameters of the same name overrides the documented parameters.
175
157
 
176
158
  ```ruby
177
- program_message =
178
- moonbase.program_messages.create(
179
- person: {email: "user@example.com"},
180
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
181
- custom_variables: {},
159
+ collection =
160
+ moonbase.collections.retrieve(
161
+ "people",
182
162
  request_options: {
183
163
  extra_query: {my_query_parameter: value},
184
164
  extra_body: {my_body_parameter: value},
@@ -186,7 +166,7 @@ program_message =
186
166
  }
187
167
  )
188
168
 
189
- puts(program_message[:my_undocumented_property])
169
+ puts(collection[:my_undocumented_property])
190
170
  ```
191
171
 
192
172
  #### Undocumented request params
@@ -224,30 +204,18 @@ This library provides comprehensive [RBI](https://sorbet.org/docs/rbi) definitio
224
204
  You can provide typesafe request parameters like so:
225
205
 
226
206
  ```ruby
227
- moonbase.program_messages.create(
228
- person: Moonbase::ProgramMessageCreateParams::Person.new(email: "user@example.com"),
229
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
230
- custom_variables: {}
231
- )
207
+ moonbase.collections.retrieve("people")
232
208
  ```
233
209
 
234
210
  Or, equivalently:
235
211
 
236
212
  ```ruby
237
213
  # Hashes work, but are not typesafe:
238
- moonbase.program_messages.create(
239
- person: {email: "user@example.com"},
240
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
241
- custom_variables: {}
242
- )
214
+ moonbase.collections.retrieve("people")
243
215
 
244
216
  # You can also splat a full Params class:
245
- params = Moonbase::ProgramMessageCreateParams.new(
246
- person: Moonbase::ProgramMessageCreateParams::Person.new(email: "user@example.com"),
247
- program_template_id: "MOONBASE_PROGRAM_TEMPLATE_ID",
248
- custom_variables: {}
249
- )
250
- moonbase.program_messages.create(**params)
217
+ params = Moonbase::CollectionRetrieveParams.new
218
+ moonbase.collections.retrieve("people", **params)
251
219
  ```
252
220
 
253
221
  ### Enums
@@ -255,25 +223,25 @@ moonbase.program_messages.create(**params)
255
223
  Since this library does not depend on `sorbet-runtime`, it cannot provide [`T::Enum`](https://sorbet.org/docs/tenum) instances. Instead, we provide "tagged symbols" instead, which is always a primitive at runtime:
256
224
 
257
225
  ```ruby
258
- # :incoming
259
- puts(Moonbase::CallCreateParams::Direction::INCOMING)
226
+ # :replace
227
+ puts(Moonbase::Collections::ItemUpdateParams::UpdateManyStrategy::REPLACE)
260
228
 
261
- # Revealed type: `T.all(Moonbase::CallCreateParams::Direction, Symbol)`
262
- T.reveal_type(Moonbase::CallCreateParams::Direction::INCOMING)
229
+ # Revealed type: `T.all(Moonbase::Collections::ItemUpdateParams::UpdateManyStrategy, Symbol)`
230
+ T.reveal_type(Moonbase::Collections::ItemUpdateParams::UpdateManyStrategy::REPLACE)
263
231
  ```
264
232
 
265
233
  Enum parameters have a "relaxed" type, so you can either pass in enum constants or their literal value:
266
234
 
267
235
  ```ruby
268
236
  # Using the enum constants preserves the tagged type information:
269
- moonbase.calls.create(
270
- direction: Moonbase::CallCreateParams::Direction::INCOMING,
237
+ moonbase.collections.items.update(
238
+ update_many_strategy: Moonbase::Collections::ItemUpdateParams::UpdateManyStrategy::REPLACE,
271
239
  # …
272
240
  )
273
241
 
274
242
  # Literal values are also permissible:
275
- moonbase.calls.create(
276
- direction: :incoming,
243
+ moonbase.collections.items.update(
244
+ update_many_strategy: :replace,
277
245
  # …
278
246
  )
279
247
  ```
@@ -19,20 +19,17 @@ module Moonbase
19
19
  # @return [String]
20
20
  attr_reader :api_key
21
21
 
22
- # @return [Moonbase::Resources::Activities]
23
- attr_reader :activities
24
-
25
- # @return [Moonbase::Resources::Calls]
26
- attr_reader :calls
22
+ # @return [Moonbase::Resources::Funnels]
23
+ attr_reader :funnels
27
24
 
28
25
  # @return [Moonbase::Resources::Collections]
29
26
  attr_reader :collections
30
27
 
31
- # @return [Moonbase::Resources::Files]
32
- attr_reader :files
28
+ # @return [Moonbase::Resources::Views]
29
+ attr_reader :views
33
30
 
34
- # @return [Moonbase::Resources::Forms]
35
- attr_reader :forms
31
+ # @return [Moonbase::Resources::Inboxes]
32
+ attr_reader :inboxes
36
33
 
37
34
  # @return [Moonbase::Resources::InboxConversations]
38
35
  attr_reader :inbox_conversations
@@ -40,32 +37,38 @@ module Moonbase
40
37
  # @return [Moonbase::Resources::InboxMessages]
41
38
  attr_reader :inbox_messages
42
39
 
43
- # @return [Moonbase::Resources::Inboxes]
44
- attr_reader :inboxes
45
-
46
- # @return [Moonbase::Resources::Items]
47
- attr_reader :items
40
+ # @return [Moonbase::Resources::Tagsets]
41
+ attr_reader :tagsets
48
42
 
49
- # @return [Moonbase::Resources::Meetings]
50
- attr_reader :meetings
43
+ # @return [Moonbase::Resources::Programs]
44
+ attr_reader :programs
51
45
 
52
- # @return [Moonbase::Resources::Notes]
53
- attr_reader :notes
46
+ # @return [Moonbase::Resources::ProgramTemplates]
47
+ attr_reader :program_templates
54
48
 
55
49
  # @return [Moonbase::Resources::ProgramMessages]
56
50
  attr_reader :program_messages
57
51
 
58
- # @return [Moonbase::Resources::ProgramTemplates]
59
- attr_reader :program_templates
52
+ # @return [Moonbase::Resources::Forms]
53
+ attr_reader :forms
60
54
 
61
- # @return [Moonbase::Resources::Programs]
62
- attr_reader :programs
55
+ # @return [Moonbase::Resources::Activities]
56
+ attr_reader :activities
63
57
 
64
- # @return [Moonbase::Resources::Tagsets]
65
- attr_reader :tagsets
58
+ # @return [Moonbase::Resources::Calls]
59
+ attr_reader :calls
66
60
 
67
- # @return [Moonbase::Resources::Views]
68
- attr_reader :views
61
+ # @return [Moonbase::Resources::Files]
62
+ attr_reader :files
63
+
64
+ # @return [Moonbase::Resources::Meetings]
65
+ attr_reader :meetings
66
+
67
+ # @return [Moonbase::Resources::Notes]
68
+ attr_reader :notes
69
+
70
+ # @return [Moonbase::Resources::WebhookEndpoints]
71
+ attr_reader :webhook_endpoints
69
72
 
70
73
  # @api private
71
74
  #
@@ -114,22 +117,23 @@ module Moonbase
114
117
  max_retry_delay: max_retry_delay
115
118
  )
116
119
 
117
- @activities = Moonbase::Resources::Activities.new(client: self)
118
- @calls = Moonbase::Resources::Calls.new(client: self)
120
+ @funnels = Moonbase::Resources::Funnels.new(client: self)
119
121
  @collections = Moonbase::Resources::Collections.new(client: self)
120
- @files = Moonbase::Resources::Files.new(client: self)
121
- @forms = Moonbase::Resources::Forms.new(client: self)
122
+ @views = Moonbase::Resources::Views.new(client: self)
123
+ @inboxes = Moonbase::Resources::Inboxes.new(client: self)
122
124
  @inbox_conversations = Moonbase::Resources::InboxConversations.new(client: self)
123
125
  @inbox_messages = Moonbase::Resources::InboxMessages.new(client: self)
124
- @inboxes = Moonbase::Resources::Inboxes.new(client: self)
125
- @items = Moonbase::Resources::Items.new(client: self)
126
+ @tagsets = Moonbase::Resources::Tagsets.new(client: self)
127
+ @programs = Moonbase::Resources::Programs.new(client: self)
128
+ @program_templates = Moonbase::Resources::ProgramTemplates.new(client: self)
129
+ @program_messages = Moonbase::Resources::ProgramMessages.new(client: self)
130
+ @forms = Moonbase::Resources::Forms.new(client: self)
131
+ @activities = Moonbase::Resources::Activities.new(client: self)
132
+ @calls = Moonbase::Resources::Calls.new(client: self)
133
+ @files = Moonbase::Resources::Files.new(client: self)
126
134
  @meetings = Moonbase::Resources::Meetings.new(client: self)
127
135
  @notes = Moonbase::Resources::Notes.new(client: self)
128
- @program_messages = Moonbase::Resources::ProgramMessages.new(client: self)
129
- @program_templates = Moonbase::Resources::ProgramTemplates.new(client: self)
130
- @programs = Moonbase::Resources::Programs.new(client: self)
131
- @tagsets = Moonbase::Resources::Tagsets.new(client: self)
132
- @views = Moonbase::Resources::Views.new(client: self)
136
+ @webhook_endpoints = Moonbase::Resources::WebhookEndpoints.new(client: self)
133
137
  end
134
138
  end
135
139
  end
@@ -10,8 +10,8 @@ module Moonbase
10
10
  # end
11
11
  #
12
12
  # @example
13
- # cursor_page.auto_paging_each do |activity|
14
- # puts(activity)
13
+ # cursor_page.auto_paging_each do |collection|
14
+ # puts(collection)
15
15
  # end
16
16
  class CursorPage
17
17
  include Moonbase::Internal::Type::BasePage
@@ -365,7 +365,7 @@ module Moonbase
365
365
  #
366
366
  # @raise [Moonbase::Errors::APIError]
367
367
  # @return [Array(Integer, Net::HTTPResponse, Enumerable<String>)]
368
- private def send_request(request, redirect_count:, retry_count:, send_retry_header:)
368
+ def send_request(request, redirect_count:, retry_count:, send_retry_header:)
369
369
  url, headers, max_retries, timeout = request.fetch_values(:url, :headers, :max_retries, :timeout)
370
370
  input = {**request.except(:timeout), deadline: Moonbase::Internal::Util.monotonic_secs + timeout}
371
371
 
@@ -193,15 +193,7 @@ module Moonbase
193
193
  end
194
194
 
195
195
  define_sorbet_constant!(:Request) do
196
- T.type_alias do
197
- {
198
- method: Symbol,
199
- url: URI::Generic,
200
- headers: T::Hash[String, String],
201
- body: T.anything,
202
- deadline: Float
203
- }
204
- end
196
+ T.type_alias { {method: Symbol, url: URI::Generic, headers: T::Hash[String, String], body: T.anything, deadline: Float} }
205
197
  end
206
198
  end
207
199
  end
@@ -148,6 +148,7 @@ module Moonbase
148
148
  # @option spec [Boolean] :"nil?"
149
149
  def initialize(type_info, spec = {})
150
150
  @item_type_fn = Moonbase::Internal::Type::Converter.type_info(type_info || spec)
151
+ @meta = Moonbase::Internal::Type::Converter.meta_info(type_info, spec)
151
152
  @nilable = spec.fetch(:nil?, false)
152
153
  end
153
154
 
@@ -52,6 +52,7 @@ module Moonbase
52
52
  #
53
53
  # @option spec [Boolean] :"nil?"
54
54
  private def add_field(name_sym, required:, type_info:, spec:)
55
+ meta = Moonbase::Internal::Type::Converter.meta_info(type_info, spec)
55
56
  type_fn, info =
56
57
  case type_info
57
58
  in Proc | Moonbase::Internal::Type::Converter | Class
@@ -63,14 +64,7 @@ module Moonbase
63
64
  setter = :"#{name_sym}="
64
65
  api_name = info.fetch(:api_name, name_sym)
65
66
  nilable = info.fetch(:nil?, false)
66
- const = if required && !nilable
67
- info.fetch(
68
- :const,
69
- Moonbase::Internal::OMIT
70
- )
71
- else
72
- Moonbase::Internal::OMIT
73
- end
67
+ const = required && !nilable ? info.fetch(:const, Moonbase::Internal::OMIT) : Moonbase::Internal::OMIT
74
68
 
75
69
  [name_sym, setter].each { undef_method(_1) } if known_fields.key?(name_sym)
76
70
 
@@ -81,7 +75,8 @@ module Moonbase
81
75
  required: required,
82
76
  nilable: nilable,
83
77
  const: const,
84
- type_fn: type_fn
78
+ type_fn: type_fn,
79
+ meta: meta
85
80
  }
86
81
 
87
82
  define_method(setter) do |value|
@@ -98,6 +98,33 @@ module Moonbase
98
98
  end
99
99
  end
100
100
 
101
+ # @api private
102
+ #
103
+ # @param type_info [Hash{Symbol=>Object}, Proc, Moonbase::Internal::Type::Converter, Class] .
104
+ #
105
+ # @option type_info [NilClass, TrueClass, FalseClass, Integer, Float, Symbol] :const
106
+ #
107
+ # @option type_info [Proc] :enum
108
+ #
109
+ # @option type_info [Proc] :union
110
+ #
111
+ # @option type_info [Boolean] :"nil?"
112
+ #
113
+ # @param spec [Hash{Symbol=>Object}, Proc, Moonbase::Internal::Type::Converter, Class] .
114
+ #
115
+ # @option spec [NilClass, TrueClass, FalseClass, Integer, Float, Symbol] :const
116
+ #
117
+ # @option spec [Proc] :enum
118
+ #
119
+ # @option spec [Proc] :union
120
+ #
121
+ # @option spec [Boolean] :"nil?"
122
+ #
123
+ # @return [Hash{Symbol=>Object}]
124
+ def meta_info(type_info, spec)
125
+ [spec, type_info].grep(Hash).first.to_h.except(:const, :enum, :union, :nil?)
126
+ end
127
+
101
128
  # @api private
102
129
  #
103
130
  # @param translate_names [Boolean]
@@ -168,6 +168,7 @@ module Moonbase
168
168
  # @option spec [Boolean] :"nil?"
169
169
  def initialize(type_info, spec = {})
170
170
  @item_type_fn = Moonbase::Internal::Type::Converter.type_info(type_info || spec)
171
+ @meta = Moonbase::Internal::Type::Converter.meta_info(type_info, spec)
171
172
  @nilable = spec.fetch(:nil?, false)
172
173
  end
173
174
 
@@ -6,28 +6,28 @@ module Moonbase
6
6
  # @api private
7
7
  #
8
8
  # @example
9
- # # `activity` is a `Moonbase::Activity`
10
- # case activity
11
- # when Moonbase::Activity::ActivityCallOccurred
12
- # puts(activity.id)
13
- # when Moonbase::Activity::ActivityFormSubmitted
14
- # puts(activity.links)
15
- # when Moonbase::Activity::ActivityInboxMessageSent
16
- # puts(activity.occurred_at)
9
+ # # `field` is a `Moonbase::Field`
10
+ # case field
11
+ # when Moonbase::SingleLineTextField
12
+ # puts(field.id)
13
+ # when Moonbase::MultiLineTextField
14
+ # puts(field.cardinality)
15
+ # when Moonbase::IntegerField
16
+ # puts(field.created_at)
17
17
  # else
18
- # puts(activity)
18
+ # puts(field)
19
19
  # end
20
20
  #
21
21
  # @example
22
- # case activity
23
- # in {type: :"activity/call_occurred", id: id, links: links, occurred_at: occurred_at}
22
+ # case field
23
+ # in {type: :"field/text/single_line", id: id, cardinality: cardinality, created_at: created_at}
24
24
  # puts(id)
25
- # in {type: :"activity/form_submitted", id: id, links: links, occurred_at: occurred_at}
26
- # puts(links)
27
- # in {type: :"activity/inbox_message_sent", id: id, links: links, occurred_at: occurred_at}
28
- # puts(occurred_at)
25
+ # in {type: :"field/text/multi_line", id: id, cardinality: cardinality, created_at: created_at}
26
+ # puts(cardinality)
27
+ # in {type: :"field/number/unitless_integer", id: id, cardinality: cardinality, created_at: created_at}
28
+ # puts(created_at)
29
29
  # else
30
- # puts(activity)
30
+ # puts(field)
31
31
  # end
32
32
  module Union
33
33
  include Moonbase::Internal::Type::Converter
@@ -37,20 +37,20 @@ module Moonbase
37
37
  #
38
38
  # All of the specified variant info for this union.
39
39
  #
40
- # @return [Array<Array(Symbol, Proc)>]
40
+ # @return [Array<Array(Symbol, Proc, Hash{Symbol=>Object})>]
41
41
  private def known_variants = (@known_variants ||= [])
42
42
 
43
43
  # @api private
44
44
  #
45
- # @return [Array<Array(Symbol, Object)>]
45
+ # @return [Array<Array(Symbol, Object, Hash{Symbol=>Object})>]
46
46
  protected def derefed_variants
47
- known_variants.map { |key, variant_fn| [key, variant_fn.call] }
47
+ known_variants.map { |key, variant_fn, meta| [key, variant_fn.call, meta] }
48
48
  end
49
49
 
50
50
  # All of the specified variants for this union.
51
51
  #
52
52
  # @return [Array<Object>]
53
- def variants = derefed_variants.map(&:last)
53
+ def variants = derefed_variants.map { _2 }
54
54
 
55
55
  # @api private
56
56
  #
@@ -76,12 +76,13 @@ module Moonbase
76
76
  #
77
77
  # @option spec [Boolean] :"nil?"
78
78
  private def variant(key, spec = nil)
79
+ meta = Moonbase::Internal::Type::Converter.meta_info(nil, spec)
79
80
  variant_info =
80
81
  case key
81
82
  in Symbol
82
- [key, Moonbase::Internal::Type::Converter.type_info(spec)]
83
+ [key, Moonbase::Internal::Type::Converter.type_info(spec), meta]
83
84
  in Proc | Moonbase::Internal::Type::Converter | Class | Hash
84
- [nil, Moonbase::Internal::Type::Converter.type_info(key)]
85
+ [nil, Moonbase::Internal::Type::Converter.type_info(key), meta]
85
86
  end
86
87
 
87
88
  known_variants << variant_info
@@ -104,7 +105,8 @@ module Moonbase
104
105
  return nil if key == Moonbase::Internal::OMIT
105
106
 
106
107
  key = key.to_sym if key.is_a?(String)
107
- known_variants.find { |k,| k == key }&.last&.call
108
+ _, found = known_variants.find { |k,| k == key }
109
+ found&.call
108
110
  else
109
111
  nil
110
112
  end
@@ -244,7 +244,7 @@ module Moonbase
244
244
  #
245
245
  # @return [String]
246
246
  def uri_origin(uri)
247
- "#{uri.scheme}://#{uri.host}#{uri.port == uri.default_port ? '' : ":#{uri.port}"}"
247
+ "#{uri.scheme}://#{uri.host}#{":#{uri.port}" unless uri.port == uri.default_port}"
248
248
  end
249
249
 
250
250
  # @api private