@revfleet/hscli 0.5.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 (329) hide show
  1. package/CHANGELOG.md +466 -0
  2. package/LICENSE +21 -0
  3. package/README.md +287 -0
  4. package/SECURITY.md +68 -0
  5. package/dist/cli.d.ts +8 -0
  6. package/dist/cli.js +192 -0
  7. package/dist/cli.js.map +1 -0
  8. package/dist/commands/account/index.d.ts +3 -0
  9. package/dist/commands/account/index.js +65 -0
  10. package/dist/commands/account/index.js.map +1 -0
  11. package/dist/commands/api/index.d.ts +3 -0
  12. package/dist/commands/api/index.js +35 -0
  13. package/dist/commands/api/index.js.map +1 -0
  14. package/dist/commands/auth/index.d.ts +3 -0
  15. package/dist/commands/auth/index.js +229 -0
  16. package/dist/commands/auth/index.js.map +1 -0
  17. package/dist/commands/automation/index.d.ts +3 -0
  18. package/dist/commands/automation/index.js +119 -0
  19. package/dist/commands/automation/index.js.map +1 -0
  20. package/dist/commands/cms/blog-settings.d.ts +3 -0
  21. package/dist/commands/cms/blog-settings.js +70 -0
  22. package/dist/commands/cms/blog-settings.js.map +1 -0
  23. package/dist/commands/cms/content-ops.d.ts +13 -0
  24. package/dist/commands/cms/content-ops.js +262 -0
  25. package/dist/commands/cms/content-ops.js.map +1 -0
  26. package/dist/commands/cms/hubdb.d.ts +3 -0
  27. package/dist/commands/cms/hubdb.js +55 -0
  28. package/dist/commands/cms/hubdb.js.map +1 -0
  29. package/dist/commands/cms/index.d.ts +3 -0
  30. package/dist/commands/cms/index.js +119 -0
  31. package/dist/commands/cms/index.js.map +1 -0
  32. package/dist/commands/cms/source-code.d.ts +3 -0
  33. package/dist/commands/cms/source-code.js +101 -0
  34. package/dist/commands/cms/source-code.js.map +1 -0
  35. package/dist/commands/communication-preferences/index.d.ts +3 -0
  36. package/dist/commands/communication-preferences/index.js +107 -0
  37. package/dist/commands/communication-preferences/index.js.map +1 -0
  38. package/dist/commands/conversations/index.d.ts +3 -0
  39. package/dist/commands/conversations/index.js +233 -0
  40. package/dist/commands/conversations/index.js.map +1 -0
  41. package/dist/commands/crm/associations.d.ts +3 -0
  42. package/dist/commands/crm/associations.js +180 -0
  43. package/dist/commands/crm/associations.js.map +1 -0
  44. package/dist/commands/crm/cards.d.ts +3 -0
  45. package/dist/commands/crm/cards.js +72 -0
  46. package/dist/commands/crm/cards.js.map +1 -0
  47. package/dist/commands/crm/carts.d.ts +3 -0
  48. package/dist/commands/crm/carts.js +5 -0
  49. package/dist/commands/crm/carts.js.map +1 -0
  50. package/dist/commands/crm/communications.d.ts +3 -0
  51. package/dist/commands/crm/communications.js +5 -0
  52. package/dist/commands/crm/communications.js.map +1 -0
  53. package/dist/commands/crm/companies.d.ts +3 -0
  54. package/dist/commands/crm/companies.js +5 -0
  55. package/dist/commands/crm/companies.js.map +1 -0
  56. package/dist/commands/crm/contacts.d.ts +3 -0
  57. package/dist/commands/crm/contacts.js +5 -0
  58. package/dist/commands/crm/contacts.js.map +1 -0
  59. package/dist/commands/crm/custom-objects.d.ts +3 -0
  60. package/dist/commands/crm/custom-objects.js +83 -0
  61. package/dist/commands/crm/custom-objects.js.map +1 -0
  62. package/dist/commands/crm/dated.d.ts +9 -0
  63. package/dist/commands/crm/dated.js +247 -0
  64. package/dist/commands/crm/dated.js.map +1 -0
  65. package/dist/commands/crm/deals.d.ts +3 -0
  66. package/dist/commands/crm/deals.js +5 -0
  67. package/dist/commands/crm/deals.js.map +1 -0
  68. package/dist/commands/crm/describe.d.ts +3 -0
  69. package/dist/commands/crm/describe.js +89 -0
  70. package/dist/commands/crm/describe.js.map +1 -0
  71. package/dist/commands/crm/discounts.d.ts +3 -0
  72. package/dist/commands/crm/discounts.js +5 -0
  73. package/dist/commands/crm/discounts.js.map +1 -0
  74. package/dist/commands/crm/engagements.d.ts +3 -0
  75. package/dist/commands/crm/engagements.js +8 -0
  76. package/dist/commands/crm/engagements.js.map +1 -0
  77. package/dist/commands/crm/fees.d.ts +3 -0
  78. package/dist/commands/crm/fees.js +5 -0
  79. package/dist/commands/crm/fees.js.map +1 -0
  80. package/dist/commands/crm/goals.d.ts +3 -0
  81. package/dist/commands/crm/goals.js +30 -0
  82. package/dist/commands/crm/goals.js.map +1 -0
  83. package/dist/commands/crm/imports.d.ts +3 -0
  84. package/dist/commands/crm/imports.js +45 -0
  85. package/dist/commands/crm/imports.js.map +1 -0
  86. package/dist/commands/crm/index.d.ts +3 -0
  87. package/dist/commands/crm/index.js +64 -0
  88. package/dist/commands/crm/index.js.map +1 -0
  89. package/dist/commands/crm/invoices.d.ts +3 -0
  90. package/dist/commands/crm/invoices.js +5 -0
  91. package/dist/commands/crm/invoices.js.map +1 -0
  92. package/dist/commands/crm/leads.d.ts +3 -0
  93. package/dist/commands/crm/leads.js +5 -0
  94. package/dist/commands/crm/leads.js.map +1 -0
  95. package/dist/commands/crm/line-items.d.ts +3 -0
  96. package/dist/commands/crm/line-items.js +5 -0
  97. package/dist/commands/crm/line-items.js.map +1 -0
  98. package/dist/commands/crm/orders.d.ts +3 -0
  99. package/dist/commands/crm/orders.js +5 -0
  100. package/dist/commands/crm/orders.js.map +1 -0
  101. package/dist/commands/crm/owners.d.ts +3 -0
  102. package/dist/commands/crm/owners.js +22 -0
  103. package/dist/commands/crm/owners.js.map +1 -0
  104. package/dist/commands/crm/payments.d.ts +3 -0
  105. package/dist/commands/crm/payments.js +5 -0
  106. package/dist/commands/crm/payments.js.map +1 -0
  107. package/dist/commands/crm/pipelines.d.ts +3 -0
  108. package/dist/commands/crm/pipelines.js +70 -0
  109. package/dist/commands/crm/pipelines.js.map +1 -0
  110. package/dist/commands/crm/products.d.ts +3 -0
  111. package/dist/commands/crm/products.js +5 -0
  112. package/dist/commands/crm/products.js.map +1 -0
  113. package/dist/commands/crm/properties.d.ts +3 -0
  114. package/dist/commands/crm/properties.js +103 -0
  115. package/dist/commands/crm/properties.js.map +1 -0
  116. package/dist/commands/crm/quotes.d.ts +3 -0
  117. package/dist/commands/crm/quotes.js +5 -0
  118. package/dist/commands/crm/quotes.js.map +1 -0
  119. package/dist/commands/crm/shared.d.ts +17 -0
  120. package/dist/commands/crm/shared.js +256 -0
  121. package/dist/commands/crm/shared.js.map +1 -0
  122. package/dist/commands/crm/subscriptions.d.ts +3 -0
  123. package/dist/commands/crm/subscriptions.js +5 -0
  124. package/dist/commands/crm/subscriptions.js.map +1 -0
  125. package/dist/commands/crm/sync.d.ts +3 -0
  126. package/dist/commands/crm/sync.js +116 -0
  127. package/dist/commands/crm/sync.js.map +1 -0
  128. package/dist/commands/crm/taxes.d.ts +3 -0
  129. package/dist/commands/crm/taxes.js +5 -0
  130. package/dist/commands/crm/taxes.js.map +1 -0
  131. package/dist/commands/crm/tickets.d.ts +3 -0
  132. package/dist/commands/crm/tickets.js +5 -0
  133. package/dist/commands/crm/tickets.js.map +1 -0
  134. package/dist/commands/crm/users.d.ts +3 -0
  135. package/dist/commands/crm/users.js +5 -0
  136. package/dist/commands/crm/users.js.map +1 -0
  137. package/dist/commands/doctor/index.d.ts +3 -0
  138. package/dist/commands/doctor/index.js +232 -0
  139. package/dist/commands/doctor/index.js.map +1 -0
  140. package/dist/commands/domains/shared.d.ts +13 -0
  141. package/dist/commands/domains/shared.js +56 -0
  142. package/dist/commands/domains/shared.js.map +1 -0
  143. package/dist/commands/email-events/index.d.ts +3 -0
  144. package/dist/commands/email-events/index.js +77 -0
  145. package/dist/commands/email-events/index.js.map +1 -0
  146. package/dist/commands/events/index.d.ts +3 -0
  147. package/dist/commands/events/index.js +80 -0
  148. package/dist/commands/events/index.js.map +1 -0
  149. package/dist/commands/exports/index.d.ts +3 -0
  150. package/dist/commands/exports/index.js +45 -0
  151. package/dist/commands/exports/index.js.map +1 -0
  152. package/dist/commands/extensions/index.d.ts +3 -0
  153. package/dist/commands/extensions/index.js +118 -0
  154. package/dist/commands/extensions/index.js.map +1 -0
  155. package/dist/commands/feature-flags/index.d.ts +3 -0
  156. package/dist/commands/feature-flags/index.js +65 -0
  157. package/dist/commands/feature-flags/index.js.map +1 -0
  158. package/dist/commands/files/folders.d.ts +3 -0
  159. package/dist/commands/files/folders.js +74 -0
  160. package/dist/commands/files/folders.js.map +1 -0
  161. package/dist/commands/files/index.d.ts +3 -0
  162. package/dist/commands/files/index.js +30 -0
  163. package/dist/commands/files/index.js.map +1 -0
  164. package/dist/commands/forms/index.d.ts +3 -0
  165. package/dist/commands/forms/index.js +37 -0
  166. package/dist/commands/forms/index.js.map +1 -0
  167. package/dist/commands/integrations/index.d.ts +3 -0
  168. package/dist/commands/integrations/index.js +64 -0
  169. package/dist/commands/integrations/index.js.map +1 -0
  170. package/dist/commands/integrators/index.d.ts +3 -0
  171. package/dist/commands/integrators/index.js +79 -0
  172. package/dist/commands/integrators/index.js.map +1 -0
  173. package/dist/commands/legacy/index.d.ts +13 -0
  174. package/dist/commands/legacy/index.js +254 -0
  175. package/dist/commands/legacy/index.js.map +1 -0
  176. package/dist/commands/legacy-v1/index.d.ts +29 -0
  177. package/dist/commands/legacy-v1/index.js +568 -0
  178. package/dist/commands/legacy-v1/index.js.map +1 -0
  179. package/dist/commands/lists/index.d.ts +3 -0
  180. package/dist/commands/lists/index.js +148 -0
  181. package/dist/commands/lists/index.js.map +1 -0
  182. package/dist/commands/marketing/ads.d.ts +3 -0
  183. package/dist/commands/marketing/ads.js +45 -0
  184. package/dist/commands/marketing/ads.js.map +1 -0
  185. package/dist/commands/marketing/behavioral-events.d.ts +3 -0
  186. package/dist/commands/marketing/behavioral-events.js +38 -0
  187. package/dist/commands/marketing/behavioral-events.js.map +1 -0
  188. package/dist/commands/marketing/events.d.ts +3 -0
  189. package/dist/commands/marketing/events.js +69 -0
  190. package/dist/commands/marketing/events.js.map +1 -0
  191. package/dist/commands/marketing/index.d.ts +3 -0
  192. package/dist/commands/marketing/index.js +55 -0
  193. package/dist/commands/marketing/index.js.map +1 -0
  194. package/dist/commands/marketing/landing-pages.d.ts +3 -0
  195. package/dist/commands/marketing/landing-pages.js +48 -0
  196. package/dist/commands/marketing/landing-pages.js.map +1 -0
  197. package/dist/commands/marketing/seo.d.ts +3 -0
  198. package/dist/commands/marketing/seo.js +35 -0
  199. package/dist/commands/marketing/seo.js.map +1 -0
  200. package/dist/commands/marketing/social.d.ts +3 -0
  201. package/dist/commands/marketing/social.js +45 -0
  202. package/dist/commands/marketing/social.js.map +1 -0
  203. package/dist/commands/marketing/subscriptions.d.ts +3 -0
  204. package/dist/commands/marketing/subscriptions.js +27 -0
  205. package/dist/commands/marketing/subscriptions.js.map +1 -0
  206. package/dist/commands/marketing/transactional.d.ts +3 -0
  207. package/dist/commands/marketing/transactional.js +30 -0
  208. package/dist/commands/marketing/transactional.js.map +1 -0
  209. package/dist/commands/marketing-emails-v1/index.d.ts +3 -0
  210. package/dist/commands/marketing-emails-v1/index.js +72 -0
  211. package/dist/commands/marketing-emails-v1/index.js.map +1 -0
  212. package/dist/commands/mcp.d.ts +2 -0
  213. package/dist/commands/mcp.js +10 -0
  214. package/dist/commands/mcp.js.map +1 -0
  215. package/dist/commands/media-bridge/index.d.ts +3 -0
  216. package/dist/commands/media-bridge/index.js +209 -0
  217. package/dist/commands/media-bridge/index.js.map +1 -0
  218. package/dist/commands/reporting/index.d.ts +3 -0
  219. package/dist/commands/reporting/index.js +73 -0
  220. package/dist/commands/reporting/index.js.map +1 -0
  221. package/dist/commands/sales/calling.d.ts +3 -0
  222. package/dist/commands/sales/calling.js +32 -0
  223. package/dist/commands/sales/calling.js.map +1 -0
  224. package/dist/commands/sales/index.d.ts +3 -0
  225. package/dist/commands/sales/index.js +10 -0
  226. package/dist/commands/sales/index.js.map +1 -0
  227. package/dist/commands/sales/meetings.d.ts +3 -0
  228. package/dist/commands/sales/meetings.js +37 -0
  229. package/dist/commands/sales/meetings.js.map +1 -0
  230. package/dist/commands/sales/sequences.d.ts +3 -0
  231. package/dist/commands/sales/sequences.js +78 -0
  232. package/dist/commands/sales/sequences.js.map +1 -0
  233. package/dist/commands/seed/cms.d.ts +6 -0
  234. package/dist/commands/seed/cms.js +204 -0
  235. package/dist/commands/seed/cms.js.map +1 -0
  236. package/dist/commands/seed/commerce.d.ts +3 -0
  237. package/dist/commands/seed/commerce.js +117 -0
  238. package/dist/commands/seed/commerce.js.map +1 -0
  239. package/dist/commands/seed/context.d.ts +8 -0
  240. package/dist/commands/seed/context.js +76 -0
  241. package/dist/commands/seed/context.js.map +1 -0
  242. package/dist/commands/seed/crm-core.d.ts +3 -0
  243. package/dist/commands/seed/crm-core.js +137 -0
  244. package/dist/commands/seed/crm-core.js.map +1 -0
  245. package/dist/commands/seed/data.d.ts +73 -0
  246. package/dist/commands/seed/data.js +49 -0
  247. package/dist/commands/seed/data.js.map +1 -0
  248. package/dist/commands/seed/engagements.d.ts +3 -0
  249. package/dist/commands/seed/engagements.js +89 -0
  250. package/dist/commands/seed/engagements.js.map +1 -0
  251. package/dist/commands/seed/index.d.ts +3 -0
  252. package/dist/commands/seed/index.js +95 -0
  253. package/dist/commands/seed/index.js.map +1 -0
  254. package/dist/commands/seed/infra.d.ts +6 -0
  255. package/dist/commands/seed/infra.js +163 -0
  256. package/dist/commands/seed/infra.js.map +1 -0
  257. package/dist/commands/seed/marketing.d.ts +3 -0
  258. package/dist/commands/seed/marketing.js +172 -0
  259. package/dist/commands/seed/marketing.js.map +1 -0
  260. package/dist/commands/seed/shared.d.ts +8 -0
  261. package/dist/commands/seed/shared.js +37 -0
  262. package/dist/commands/seed/shared.js.map +1 -0
  263. package/dist/commands/seed/types.d.ts +44 -0
  264. package/dist/commands/seed/types.js +2 -0
  265. package/dist/commands/seed/types.js.map +1 -0
  266. package/dist/commands/service/chatflows.d.ts +3 -0
  267. package/dist/commands/service/chatflows.js +30 -0
  268. package/dist/commands/service/chatflows.js.map +1 -0
  269. package/dist/commands/service/index.d.ts +3 -0
  270. package/dist/commands/service/index.js +25 -0
  271. package/dist/commands/service/index.js.map +1 -0
  272. package/dist/commands/service/knowledge-base.d.ts +3 -0
  273. package/dist/commands/service/knowledge-base.js +19 -0
  274. package/dist/commands/service/knowledge-base.js.map +1 -0
  275. package/dist/commands/service/pipelines.d.ts +3 -0
  276. package/dist/commands/service/pipelines.js +36 -0
  277. package/dist/commands/service/pipelines.js.map +1 -0
  278. package/dist/commands/settings/index.d.ts +3 -0
  279. package/dist/commands/settings/index.js +149 -0
  280. package/dist/commands/settings/index.js.map +1 -0
  281. package/dist/commands/site-search/index.d.ts +3 -0
  282. package/dist/commands/site-search/index.js +36 -0
  283. package/dist/commands/site-search/index.js.map +1 -0
  284. package/dist/commands/timeline/index.d.ts +3 -0
  285. package/dist/commands/timeline/index.js +32 -0
  286. package/dist/commands/timeline/index.js.map +1 -0
  287. package/dist/commands/webhooks/index.d.ts +3 -0
  288. package/dist/commands/webhooks/index.js +41 -0
  289. package/dist/commands/webhooks/index.js.map +1 -0
  290. package/dist/commands/workflows/index.d.ts +3 -0
  291. package/dist/commands/workflows/index.js +13 -0
  292. package/dist/commands/workflows/index.js.map +1 -0
  293. package/dist/core/auth.d.ts +33 -0
  294. package/dist/core/auth.js +137 -0
  295. package/dist/core/auth.js.map +1 -0
  296. package/dist/core/capabilities.d.ts +60 -0
  297. package/dist/core/capabilities.js +559 -0
  298. package/dist/core/capabilities.js.map +1 -0
  299. package/dist/core/http.d.ts +47 -0
  300. package/dist/core/http.js +433 -0
  301. package/dist/core/http.js.map +1 -0
  302. package/dist/core/output.d.ts +23 -0
  303. package/dist/core/output.js +197 -0
  304. package/dist/core/output.js.map +1 -0
  305. package/dist/core/permissions.d.ts +9 -0
  306. package/dist/core/permissions.js +27 -0
  307. package/dist/core/permissions.js.map +1 -0
  308. package/dist/core/plugins.d.ts +42 -0
  309. package/dist/core/plugins.js +94 -0
  310. package/dist/core/plugins.js.map +1 -0
  311. package/dist/core/policy.d.ts +2 -0
  312. package/dist/core/policy.js +38 -0
  313. package/dist/core/policy.js.map +1 -0
  314. package/dist/core/schema-cache.d.ts +56 -0
  315. package/dist/core/schema-cache.js +338 -0
  316. package/dist/core/schema-cache.js.map +1 -0
  317. package/dist/core/schemas.d.ts +96 -0
  318. package/dist/core/schemas.js +104 -0
  319. package/dist/core/schemas.js.map +1 -0
  320. package/dist/core/urls.d.ts +50 -0
  321. package/dist/core/urls.js +122 -0
  322. package/dist/core/urls.js.map +1 -0
  323. package/dist/core/vault.d.ts +37 -0
  324. package/dist/core/vault.js +143 -0
  325. package/dist/core/vault.js.map +1 -0
  326. package/dist/mcp/server.d.ts +5 -0
  327. package/dist/mcp/server.js +680 -0
  328. package/dist/mcp/server.js.map +1 -0
  329. package/package.json +84 -0
@@ -0,0 +1,72 @@
1
+ import { createClient } from "../../core/http.js";
2
+ import { printResult } from "../../core/output.js";
3
+ import { encodePathSegment, maybeWrite, parseJsonPayload } from "./shared.js";
4
+ export function registerCards(crm, getCtx) {
5
+ const cards = crm.command("cards").description("CRM UI Extension cards (app-defined record sidebar cards)");
6
+ cards
7
+ .command("list")
8
+ .description("List all cards defined by an app")
9
+ .argument("<appId>")
10
+ .action(async (appId) => {
11
+ const ctx = getCtx();
12
+ const client = createClient(ctx.profile);
13
+ const appSeg = encodePathSegment(appId, "appId");
14
+ const res = await client.request(`/crm/v3/extensions/cards/${appSeg}`);
15
+ printResult(ctx, res);
16
+ });
17
+ cards
18
+ .command("get")
19
+ .description("Get a card definition by card id")
20
+ .argument("<appId>")
21
+ .argument("<cardId>")
22
+ .action(async (appId, cardId) => {
23
+ const ctx = getCtx();
24
+ const client = createClient(ctx.profile);
25
+ const appSeg = encodePathSegment(appId, "appId");
26
+ const cardSeg = encodePathSegment(cardId, "cardId");
27
+ const res = await client.request(`/crm/v3/extensions/cards/${appSeg}/${cardSeg}`);
28
+ printResult(ctx, res);
29
+ });
30
+ cards
31
+ .command("create")
32
+ .description("Create a card definition for an app")
33
+ .argument("<appId>")
34
+ .requiredOption("--data <payload>", "Card definition JSON (title, fetch, actions, objectTypes, ...)")
35
+ .action(async (appId, opts) => {
36
+ const ctx = getCtx();
37
+ const client = createClient(ctx.profile);
38
+ const appSeg = encodePathSegment(appId, "appId");
39
+ const payload = parseJsonPayload(opts.data);
40
+ const res = await maybeWrite(ctx, client, "POST", `/crm/v3/extensions/cards/${appSeg}`, payload);
41
+ printResult(ctx, res);
42
+ });
43
+ cards
44
+ .command("update")
45
+ .description("Update a card definition")
46
+ .argument("<appId>")
47
+ .argument("<cardId>")
48
+ .requiredOption("--data <payload>", "Card patch payload JSON")
49
+ .action(async (appId, cardId, opts) => {
50
+ const ctx = getCtx();
51
+ const client = createClient(ctx.profile);
52
+ const appSeg = encodePathSegment(appId, "appId");
53
+ const cardSeg = encodePathSegment(cardId, "cardId");
54
+ const payload = parseJsonPayload(opts.data);
55
+ const res = await maybeWrite(ctx, client, "PATCH", `/crm/v3/extensions/cards/${appSeg}/${cardSeg}`, payload);
56
+ printResult(ctx, res);
57
+ });
58
+ cards
59
+ .command("delete")
60
+ .description("Delete a card definition")
61
+ .argument("<appId>")
62
+ .argument("<cardId>")
63
+ .action(async (appId, cardId) => {
64
+ const ctx = getCtx();
65
+ const client = createClient(ctx.profile);
66
+ const appSeg = encodePathSegment(appId, "appId");
67
+ const cardSeg = encodePathSegment(cardId, "cardId");
68
+ const res = await maybeWrite(ctx, client, "DELETE", `/crm/v3/extensions/cards/${appSeg}/${cardSeg}`);
69
+ printResult(ctx, res);
70
+ });
71
+ }
72
+ //# sourceMappingURL=cards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cards.js","sourceRoot":"","sources":["../../../src/commands/crm/cards.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerCarts(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,5 @@
1
+ import { registerObjectCommands } from "./shared.js";
2
+ export function registerCarts(crm, getCtx) {
3
+ registerObjectCommands(crm, "carts", getCtx);
4
+ }
5
+ //# sourceMappingURL=carts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"carts.js","sourceRoot":"","sources":["../../../src/commands/crm/carts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,UAAU,aAAa,CAAC,GAAY,EAAE,MAAwB;IAClE,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerCommunications(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,5 @@
1
+ import { registerObjectCommands } from "./shared.js";
2
+ export function registerCommunications(crm, getCtx) {
3
+ registerObjectCommands(crm, "communications", getCtx);
4
+ }
5
+ //# sourceMappingURL=communications.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"communications.js","sourceRoot":"","sources":["../../../src/commands/crm/communications.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,UAAU,sBAAsB,CAAC,GAAY,EAAE,MAAwB;IAC3E,sBAAsB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerCompanies(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,5 @@
1
+ import { registerObjectCommands } from "./shared.js";
2
+ export function registerCompanies(crm, getCtx) {
3
+ registerObjectCommands(crm, "companies", getCtx);
4
+ }
5
+ //# sourceMappingURL=companies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"companies.js","sourceRoot":"","sources":["../../../src/commands/crm/companies.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,UAAU,iBAAiB,CAAC,GAAY,EAAE,MAAwB;IACtE,sBAAsB,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerContacts(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,5 @@
1
+ import { registerObjectCommands } from "./shared.js";
2
+ export function registerContacts(crm, getCtx) {
3
+ registerObjectCommands(crm, "contacts", getCtx);
4
+ }
5
+ //# sourceMappingURL=contacts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../../src/commands/crm/contacts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,UAAU,gBAAgB,CAAC,GAAY,EAAE,MAAwB;IACrE,sBAAsB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerCustomObjects(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,83 @@
1
+ import { createClient } from "../../core/http.js";
2
+ import { printResult } from "../../core/output.js";
3
+ import { encodePathSegment, maybeWrite, parseJsonPayload, parseNumberFlag } from "./shared.js";
4
+ export function registerCustomObjects(crm, getCtx) {
5
+ const custom = crm.command("custom-objects").description("Custom object schemas and records");
6
+ const schemas = custom.command("schemas").description("Schema management");
7
+ schemas.command("list").action(async () => {
8
+ const ctx = getCtx();
9
+ const client = createClient(ctx.profile);
10
+ const res = await client.request("/crm/v3/schemas");
11
+ printResult(ctx, res);
12
+ });
13
+ schemas.command("get").argument("<objectType>").action(async (objectType) => {
14
+ const ctx = getCtx();
15
+ const client = createClient(ctx.profile);
16
+ const res = await client.request(`/crm/v3/schemas/${encodePathSegment(objectType, "objectType")}`);
17
+ printResult(ctx, res);
18
+ });
19
+ schemas.command("create").requiredOption("--data <payload>", "Schema payload JSON").action(async (opts) => {
20
+ const ctx = getCtx();
21
+ const client = createClient(ctx.profile);
22
+ const payload = parseJsonPayload(opts.data);
23
+ const res = await maybeWrite(ctx, client, "POST", "/crm/v3/schemas", payload);
24
+ printResult(ctx, res);
25
+ });
26
+ schemas.command("update").argument("<objectType>").requiredOption("--data <payload>", "Schema payload JSON").action(async (objectType, opts) => {
27
+ const ctx = getCtx();
28
+ const client = createClient(ctx.profile);
29
+ const payload = parseJsonPayload(opts.data);
30
+ const res = await maybeWrite(ctx, client, "PATCH", `/crm/v3/schemas/${encodePathSegment(objectType, "objectType")}`, payload);
31
+ printResult(ctx, res);
32
+ });
33
+ const records = custom.command("records").description("Custom object records");
34
+ records
35
+ .command("list")
36
+ .argument("<objectType>")
37
+ .option("--limit <n>", "Max records", "50")
38
+ .option("--after <cursor>", "Paging cursor")
39
+ .action(async (objectType, opts) => {
40
+ const ctx = getCtx();
41
+ const client = createClient(ctx.profile);
42
+ const params = new URLSearchParams();
43
+ params.set("limit", String(parseNumberFlag(opts.limit, "--limit")));
44
+ if (opts.after)
45
+ params.set("after", opts.after);
46
+ const res = await client.request(`/crm/v3/objects/${encodePathSegment(objectType, "objectType")}?${params.toString()}`);
47
+ printResult(ctx, res);
48
+ });
49
+ records.command("get").argument("<objectType>").argument("<id>").action(async (objectType, id) => {
50
+ const ctx = getCtx();
51
+ const client = createClient(ctx.profile);
52
+ const res = await client.request(`/crm/v3/objects/${encodePathSegment(objectType, "objectType")}/${encodePathSegment(id, "id")}`);
53
+ printResult(ctx, res);
54
+ });
55
+ records.command("search").argument("<objectType>").requiredOption("--data <payload>", "Search payload JSON").action(async (objectType, opts) => {
56
+ const ctx = getCtx();
57
+ const client = createClient(ctx.profile);
58
+ const payload = parseJsonPayload(opts.data);
59
+ const res = await client.request(`/crm/v3/objects/${encodePathSegment(objectType, "objectType")}/search`, { method: "POST", body: payload });
60
+ printResult(ctx, res);
61
+ });
62
+ records.command("create").argument("<objectType>").requiredOption("--data <payload>", "Record payload JSON").action(async (objectType, opts) => {
63
+ const ctx = getCtx();
64
+ const client = createClient(ctx.profile);
65
+ const payload = parseJsonPayload(opts.data);
66
+ const res = await maybeWrite(ctx, client, "POST", `/crm/v3/objects/${encodePathSegment(objectType, "objectType")}`, payload);
67
+ printResult(ctx, res);
68
+ });
69
+ records.command("update").argument("<objectType>").argument("<id>").requiredOption("--data <payload>", "Record payload JSON").action(async (objectType, id, opts) => {
70
+ const ctx = getCtx();
71
+ const client = createClient(ctx.profile);
72
+ const payload = parseJsonPayload(opts.data);
73
+ const res = await maybeWrite(ctx, client, "PATCH", `/crm/v3/objects/${encodePathSegment(objectType, "objectType")}/${encodePathSegment(id, "id")}`, payload);
74
+ printResult(ctx, res);
75
+ });
76
+ records.command("delete").argument("<objectType>").argument("<id>").action(async (objectType, id) => {
77
+ const ctx = getCtx();
78
+ const client = createClient(ctx.profile);
79
+ const res = await maybeWrite(ctx, client, "DELETE", `/crm/v3/objects/${encodePathSegment(objectType, "objectType")}/${encodePathSegment(id, "id")}`);
80
+ printResult(ctx, res);
81
+ });
82
+ }
83
+ //# sourceMappingURL=custom-objects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-objects.js","sourceRoot":"","sources":["../../../src/commands/crm/custom-objects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ /**
4
+ * Dated API (2025-09) — HubSpot's newer schema-versioned paths alongside v3.
5
+ * Same functional surface as /crm/v3/objects/{type} but with fixed behaviour for
6
+ * schema changes. Exposed under `hubcli crm dated ...` so v3 and the dated
7
+ * version stay side-by-side without collision.
8
+ */
9
+ export declare function registerDatedApi(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,247 @@
1
+ import { createClient } from "../../core/http.js";
2
+ import { printResult } from "../../core/output.js";
3
+ import { appendOptional, encodePathSegment, maybeWrite, parseJsonPayload, parseNumberFlag } from "./shared.js";
4
+ /**
5
+ * Dated API (2025-09) — HubSpot's newer schema-versioned paths alongside v3.
6
+ * Same functional surface as /crm/v3/objects/{type} but with fixed behaviour for
7
+ * schema changes. Exposed under `hubcli crm dated ...` so v3 and the dated
8
+ * version stay side-by-side without collision.
9
+ */
10
+ export function registerDatedApi(crm, getCtx) {
11
+ const dated = crm.command("dated").description("CRM dated API versions (2025-09) with schema-stable semantics");
12
+ const objects = dated.command("objects-2025-09").description("/crm/objects/2025-09/{objectType}");
13
+ objects.command("list").argument("<objectType>").option("--limit <n>", "Max records", "10").option("--after <cursor>", "Paging cursor").option("--properties <csv>", "Comma-separated property names").action(async (objectType, o) => {
14
+ const ctx = getCtx();
15
+ const client = createClient(ctx.profile);
16
+ const seg = encodePathSegment(objectType, "objectType");
17
+ const params = new URLSearchParams();
18
+ params.set("limit", String(parseNumberFlag(o.limit, "--limit")));
19
+ appendOptional(params, "after", o.after);
20
+ if (o.properties)
21
+ params.set("properties", o.properties);
22
+ const res = await client.request(`/crm/objects/2025-09/${seg}?${params.toString()}`);
23
+ printResult(ctx, res);
24
+ });
25
+ objects.command("get").argument("<objectType>").argument("<id>").action(async (objectType, id) => {
26
+ const ctx = getCtx();
27
+ const client = createClient(ctx.profile);
28
+ const typeSeg = encodePathSegment(objectType, "objectType");
29
+ const idSeg = encodePathSegment(id, "id");
30
+ const res = await client.request(`/crm/objects/2025-09/${typeSeg}/${idSeg}`);
31
+ printResult(ctx, res);
32
+ });
33
+ objects.command("create").argument("<objectType>").requiredOption("--data <payload>", "Object payload JSON").action(async (objectType, o) => {
34
+ const ctx = getCtx();
35
+ const client = createClient(ctx.profile);
36
+ const seg = encodePathSegment(objectType, "objectType");
37
+ const res = await maybeWrite(ctx, client, "POST", `/crm/objects/2025-09/${seg}`, parseJsonPayload(o.data));
38
+ printResult(ctx, res);
39
+ });
40
+ objects.command("update").argument("<objectType>").argument("<id>").requiredOption("--data <payload>", "Object patch JSON").action(async (objectType, id, o) => {
41
+ const ctx = getCtx();
42
+ const client = createClient(ctx.profile);
43
+ const typeSeg = encodePathSegment(objectType, "objectType");
44
+ const idSeg = encodePathSegment(id, "id");
45
+ const res = await maybeWrite(ctx, client, "PATCH", `/crm/objects/2025-09/${typeSeg}/${idSeg}`, parseJsonPayload(o.data));
46
+ printResult(ctx, res);
47
+ });
48
+ objects.command("delete").argument("<objectType>").argument("<id>").action(async (objectType, id) => {
49
+ const ctx = getCtx();
50
+ const client = createClient(ctx.profile);
51
+ const typeSeg = encodePathSegment(objectType, "objectType");
52
+ const idSeg = encodePathSegment(id, "id");
53
+ const res = await maybeWrite(ctx, client, "DELETE", `/crm/objects/2025-09/${typeSeg}/${idSeg}`);
54
+ printResult(ctx, res);
55
+ });
56
+ objects.command("search").argument("<objectType>").requiredOption("--data <payload>", "Search body JSON").action(async (objectType, o) => {
57
+ const ctx = getCtx();
58
+ const client = createClient(ctx.profile);
59
+ const seg = encodePathSegment(objectType, "objectType");
60
+ const res = await client.request(`/crm/objects/2025-09/${seg}/search`, { method: "POST", body: parseJsonPayload(o.data) });
61
+ printResult(ctx, res);
62
+ });
63
+ for (const op of ["batch-read", "batch-create", "batch-update", "batch-upsert", "batch-archive"]) {
64
+ objects.command(op).argument("<objectType>").requiredOption("--data <payload>", `Batch ${op} payload JSON`).action(async (objectType, o) => {
65
+ const ctx = getCtx();
66
+ const client = createClient(ctx.profile);
67
+ const seg = encodePathSegment(objectType, "objectType");
68
+ const res = op === "batch-read"
69
+ ? await client.request(`/crm/objects/2025-09/${seg}/${op}`, { method: "POST", body: parseJsonPayload(o.data) })
70
+ : await maybeWrite(ctx, client, "POST", `/crm/objects/2025-09/${seg}/${op}`, parseJsonPayload(o.data));
71
+ printResult(ctx, res);
72
+ });
73
+ }
74
+ const props = dated.command("properties-2025-09").description("/crm/properties/2025-09/{objectType}");
75
+ props.command("list").argument("<objectType>").action(async (objectType) => {
76
+ const ctx = getCtx();
77
+ const client = createClient(ctx.profile);
78
+ const seg = encodePathSegment(objectType, "objectType");
79
+ const res = await client.request(`/crm/properties/2025-09/${seg}`);
80
+ printResult(ctx, res);
81
+ });
82
+ props.command("get").argument("<objectType>").argument("<propertyName>").action(async (objectType, propertyName) => {
83
+ const ctx = getCtx();
84
+ const client = createClient(ctx.profile);
85
+ const typeSeg = encodePathSegment(objectType, "objectType");
86
+ const nameSeg = encodePathSegment(propertyName, "propertyName");
87
+ const res = await client.request(`/crm/properties/2025-09/${typeSeg}/${nameSeg}`);
88
+ printResult(ctx, res);
89
+ });
90
+ props.command("create").argument("<objectType>").requiredOption("--data <payload>", "Property definition JSON").action(async (objectType, o) => {
91
+ const ctx = getCtx();
92
+ const client = createClient(ctx.profile);
93
+ const seg = encodePathSegment(objectType, "objectType");
94
+ const res = await maybeWrite(ctx, client, "POST", `/crm/properties/2025-09/${seg}`, parseJsonPayload(o.data));
95
+ printResult(ctx, res);
96
+ });
97
+ props.command("update").argument("<objectType>").argument("<propertyName>").requiredOption("--data <payload>", "Property patch JSON").action(async (objectType, propertyName, o) => {
98
+ const ctx = getCtx();
99
+ const client = createClient(ctx.profile);
100
+ const typeSeg = encodePathSegment(objectType, "objectType");
101
+ const nameSeg = encodePathSegment(propertyName, "propertyName");
102
+ const res = await maybeWrite(ctx, client, "PATCH", `/crm/properties/2025-09/${typeSeg}/${nameSeg}`, parseJsonPayload(o.data));
103
+ printResult(ctx, res);
104
+ });
105
+ props.command("delete").argument("<objectType>").argument("<propertyName>").action(async (objectType, propertyName) => {
106
+ const ctx = getCtx();
107
+ const client = createClient(ctx.profile);
108
+ const typeSeg = encodePathSegment(objectType, "objectType");
109
+ const nameSeg = encodePathSegment(propertyName, "propertyName");
110
+ const res = await maybeWrite(ctx, client, "DELETE", `/crm/properties/2025-09/${typeSeg}/${nameSeg}`);
111
+ printResult(ctx, res);
112
+ });
113
+ const assoc = dated.command("associations-2025-09").description("/crm/associations/2025-09/*");
114
+ for (const op of ["batch-read", "batch-create", "batch-archive"]) {
115
+ assoc.command(op).argument("<fromObjectType>").argument("<toObjectType>").requiredOption("--data <payload>", `Batch ${op} payload JSON`).action(async (fromObjectType, toObjectType, o) => {
116
+ const ctx = getCtx();
117
+ const client = createClient(ctx.profile);
118
+ const fromSeg = encodePathSegment(fromObjectType, "fromObjectType");
119
+ const toSeg = encodePathSegment(toObjectType, "toObjectType");
120
+ const res = op === "batch-read"
121
+ ? await client.request(`/crm/associations/2025-09/${fromSeg}/${toSeg}/${op}`, { method: "POST", body: parseJsonPayload(o.data) })
122
+ : await maybeWrite(ctx, client, "POST", `/crm/associations/2025-09/${fromSeg}/${toSeg}/${op}`, parseJsonPayload(o.data));
123
+ printResult(ctx, res);
124
+ });
125
+ }
126
+ assoc.command("batch-associate-default").argument("<fromObjectType>").argument("<toObjectType>").requiredOption("--data <payload>", "Batch associate-default payload JSON").action(async (fromObjectType, toObjectType, o) => {
127
+ const ctx = getCtx();
128
+ const client = createClient(ctx.profile);
129
+ const fromSeg = encodePathSegment(fromObjectType, "fromObjectType");
130
+ const toSeg = encodePathSegment(toObjectType, "toObjectType");
131
+ const res = await maybeWrite(ctx, client, "POST", `/crm/associations/2025-09/${fromSeg}/${toSeg}/batch/associate/default`, parseJsonPayload(o.data));
132
+ printResult(ctx, res);
133
+ });
134
+ assoc.command("batch-labels-archive").argument("<fromObjectType>").argument("<toObjectType>").requiredOption("--data <payload>", "Batch labels-archive payload JSON").action(async (fromObjectType, toObjectType, o) => {
135
+ const ctx = getCtx();
136
+ const client = createClient(ctx.profile);
137
+ const fromSeg = encodePathSegment(fromObjectType, "fromObjectType");
138
+ const toSeg = encodePathSegment(toObjectType, "toObjectType");
139
+ const res = await maybeWrite(ctx, client, "POST", `/crm/associations/2025-09/${fromSeg}/${toSeg}/batch/labels/archive`, parseJsonPayload(o.data));
140
+ printResult(ctx, res);
141
+ });
142
+ assoc.command("labels-create").argument("<fromObjectType>").argument("<toObjectType>").requiredOption("--data <payload>", "Label create payload JSON").action(async (fromObjectType, toObjectType, o) => {
143
+ const ctx = getCtx();
144
+ const client = createClient(ctx.profile);
145
+ const fromSeg = encodePathSegment(fromObjectType, "fromObjectType");
146
+ const toSeg = encodePathSegment(toObjectType, "toObjectType");
147
+ const res = await maybeWrite(ctx, client, "POST", `/crm/associations/2025-09/${fromSeg}/${toSeg}/labels`, parseJsonPayload(o.data));
148
+ printResult(ctx, res);
149
+ });
150
+ assoc.command("labels-update").argument("<fromObjectType>").argument("<toObjectType>").requiredOption("--data <payload>", "Label patch JSON").action(async (fromObjectType, toObjectType, o) => {
151
+ const ctx = getCtx();
152
+ const client = createClient(ctx.profile);
153
+ const fromSeg = encodePathSegment(fromObjectType, "fromObjectType");
154
+ const toSeg = encodePathSegment(toObjectType, "toObjectType");
155
+ const res = await maybeWrite(ctx, client, "PUT", `/crm/associations/2025-09/${fromSeg}/${toSeg}/labels`, parseJsonPayload(o.data));
156
+ printResult(ctx, res);
157
+ });
158
+ assoc.command("usage-report").description("Generate high-usage associations report").action(async () => {
159
+ const ctx = getCtx();
160
+ const client = createClient(ctx.profile);
161
+ const res = await maybeWrite(ctx, client, "POST", `/crm/associations/2025-09/usage/high/usage/report`);
162
+ printResult(ctx, res);
163
+ });
164
+ // Associations v4 definitions / configurations
165
+ const v4defs = dated.command("associations-v4-configs").description("/crm/associations/v4/definitions/configurations");
166
+ v4defs.command("list").action(async () => {
167
+ const ctx = getCtx();
168
+ const client = createClient(ctx.profile);
169
+ const res = await client.request(`/crm/associations/v4/definitions/configurations`);
170
+ printResult(ctx, res);
171
+ });
172
+ v4defs.command("all").action(async () => {
173
+ const ctx = getCtx();
174
+ const client = createClient(ctx.profile);
175
+ const res = await client.request(`/crm/associations/v4/definitions/configurations/all`);
176
+ printResult(ctx, res);
177
+ });
178
+ for (const op of ["batch-create", "batch-update"]) {
179
+ v4defs.command(op).argument("<fromObjectType>").argument("<toObjectType>").requiredOption("--data <payload>", `Payload JSON for ${op}`).action(async (fromObjectType, toObjectType, o) => {
180
+ const ctx = getCtx();
181
+ const client = createClient(ctx.profile);
182
+ const fromSeg = encodePathSegment(fromObjectType, "fromObjectType");
183
+ const toSeg = encodePathSegment(toObjectType, "toObjectType");
184
+ const res = await maybeWrite(ctx, client, "POST", `/crm/associations/v4/definitions/configurations/${fromSeg}/${toSeg}/${op}`, parseJsonPayload(o.data));
185
+ printResult(ctx, res);
186
+ });
187
+ }
188
+ v4defs.command("batch-purge").argument("<fromObjectType>").argument("<toObjectType>").requiredOption("--data <payload>", "Purge payload JSON").action(async (fromObjectType, toObjectType, o) => {
189
+ const ctx = getCtx();
190
+ const client = createClient(ctx.profile);
191
+ const fromSeg = encodePathSegment(fromObjectType, "fromObjectType");
192
+ const toSeg = encodePathSegment(toObjectType, "toObjectType");
193
+ const res = await maybeWrite(ctx, client, "POST", `/crm/associations/v4/definitions/configurations/${fromSeg}/${toSeg}/batch/purge`, parseJsonPayload(o.data));
194
+ printResult(ctx, res);
195
+ });
196
+ // Object schemas alternate path
197
+ const schemas = dated.command("object-schemas").description("/crm/object-schemas/v3/schemas (alternate path)");
198
+ schemas.command("list").action(async () => {
199
+ const ctx = getCtx();
200
+ const client = createClient(ctx.profile);
201
+ const res = await client.request(`/crm/object-schemas/v3/schemas`);
202
+ printResult(ctx, res);
203
+ });
204
+ schemas.command("get").argument("<objectType>").action(async (objectType) => {
205
+ const ctx = getCtx();
206
+ const client = createClient(ctx.profile);
207
+ const seg = encodePathSegment(objectType, "objectType");
208
+ const res = await client.request(`/crm/object-schemas/v3/schemas/${seg}`);
209
+ printResult(ctx, res);
210
+ });
211
+ schemas.command("create").requiredOption("--data <payload>", "Schema payload JSON").action(async (o) => {
212
+ const ctx = getCtx();
213
+ const client = createClient(ctx.profile);
214
+ const res = await maybeWrite(ctx, client, "POST", `/crm/object-schemas/v3/schemas`, parseJsonPayload(o.data));
215
+ printResult(ctx, res);
216
+ });
217
+ schemas.command("update").argument("<objectType>").requiredOption("--data <payload>", "Schema patch JSON").action(async (objectType, o) => {
218
+ const ctx = getCtx();
219
+ const client = createClient(ctx.profile);
220
+ const seg = encodePathSegment(objectType, "objectType");
221
+ const res = await maybeWrite(ctx, client, "PATCH", `/crm/object-schemas/v3/schemas/${seg}`, parseJsonPayload(o.data));
222
+ printResult(ctx, res);
223
+ });
224
+ schemas.command("delete").argument("<objectType>").action(async (objectType) => {
225
+ const ctx = getCtx();
226
+ const client = createClient(ctx.profile);
227
+ const seg = encodePathSegment(objectType, "objectType");
228
+ const res = await maybeWrite(ctx, client, "DELETE", `/crm/object-schemas/v3/schemas/${seg}`);
229
+ printResult(ctx, res);
230
+ });
231
+ schemas.command("associations-create").argument("<objectType>").requiredOption("--data <payload>", "Association payload JSON").action(async (objectType, o) => {
232
+ const ctx = getCtx();
233
+ const client = createClient(ctx.profile);
234
+ const seg = encodePathSegment(objectType, "objectType");
235
+ const res = await maybeWrite(ctx, client, "POST", `/crm/object-schemas/v3/schemas/${seg}/associations`, parseJsonPayload(o.data));
236
+ printResult(ctx, res);
237
+ });
238
+ schemas.command("associations-delete").argument("<objectType>").argument("<associationId>").action(async (objectType, associationId) => {
239
+ const ctx = getCtx();
240
+ const client = createClient(ctx.profile);
241
+ const seg = encodePathSegment(objectType, "objectType");
242
+ const idSeg = encodePathSegment(associationId, "associationId");
243
+ const res = await maybeWrite(ctx, client, "DELETE", `/crm/object-schemas/v3/schemas/${seg}/associations/${idSeg}`);
244
+ printResult(ctx, res);
245
+ });
246
+ }
247
+ //# sourceMappingURL=dated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dated.js","sourceRoot":"","sources":["../../../src/commands/crm/dated.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerDeals(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,5 @@
1
+ import { registerObjectCommands } from "./shared.js";
2
+ export function registerDeals(crm, getCtx) {
3
+ registerObjectCommands(crm, "deals", getCtx);
4
+ }
5
+ //# sourceMappingURL=deals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deals.js","sourceRoot":"","sources":["../../../src/commands/crm/deals.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,UAAU,aAAa,CAAC,GAAY,EAAE,MAAwB;IAClE,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerDescribe(crm: Command, getCtx: () => CliContext): void;