twentythree-cli 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/README.md +25 -0
  2. package/bin/dev.cmd +2 -0
  3. package/bin/dev.js +28 -0
  4. package/bin/run.cmd +2 -0
  5. package/bin/run.js +23 -0
  6. package/dist/_virtual/_rolldown/runtime.cjs +23 -0
  7. package/dist/api/client.cjs +24 -0
  8. package/dist/api/types.cjs +0 -0
  9. package/dist/auth/credential-store.cjs +22 -0
  10. package/dist/auth/token-refresh.cjs +70 -0
  11. package/dist/auth/workspace-config.cjs +61 -0
  12. package/dist/commands/action/add.cjs +75 -0
  13. package/dist/commands/action/delete.cjs +64 -0
  14. package/dist/commands/action/exclude.cjs +70 -0
  15. package/dist/commands/action/get.cjs +112 -0
  16. package/dist/commands/action/include.cjs +70 -0
  17. package/dist/commands/action/list.cjs +119 -0
  18. package/dist/commands/action/types.cjs +63 -0
  19. package/dist/commands/action/update.cjs +86 -0
  20. package/dist/commands/action/upload.cjs +89 -0
  21. package/dist/commands/analytics/conversions/index.cjs +83 -0
  22. package/dist/commands/analytics/conversions/timeseries.cjs +83 -0
  23. package/dist/commands/analytics/conversions/totals.cjs +83 -0
  24. package/dist/commands/analytics/live/event-timeseries.cjs +86 -0
  25. package/dist/commands/analytics/live/event-totals.cjs +86 -0
  26. package/dist/commands/analytics/live/event.cjs +88 -0
  27. package/dist/commands/analytics/live/index.cjs +89 -0
  28. package/dist/commands/analytics/live/timeseries.cjs +85 -0
  29. package/dist/commands/analytics/live/totals.cjs +85 -0
  30. package/dist/commands/analytics/live/weekday/timeseries.cjs +85 -0
  31. package/dist/commands/analytics/live/weekday/totals.cjs +85 -0
  32. package/dist/commands/analytics/live/weekday.cjs +88 -0
  33. package/dist/commands/analytics/usage/devices/timeseries.cjs +83 -0
  34. package/dist/commands/analytics/usage/devices/totals.cjs +86 -0
  35. package/dist/commands/analytics/usage/devices.cjs +89 -0
  36. package/dist/commands/analytics/usage/domains/totals.cjs +83 -0
  37. package/dist/commands/analytics/usage/domains.cjs +89 -0
  38. package/dist/commands/analytics/usage/locations/totals.cjs +83 -0
  39. package/dist/commands/analytics/usage/locations.cjs +89 -0
  40. package/dist/commands/analytics/usage/sourceids/totals.cjs +83 -0
  41. package/dist/commands/analytics/usage/sourceids.cjs +89 -0
  42. package/dist/commands/analytics/usage/sources/totals.cjs +83 -0
  43. package/dist/commands/analytics/usage/sources.cjs +89 -0
  44. package/dist/commands/analytics/usage/spots/timeseries.cjs +83 -0
  45. package/dist/commands/analytics/usage/spots/totals.cjs +83 -0
  46. package/dist/commands/analytics/usage/spots.cjs +89 -0
  47. package/dist/commands/analytics/usage/storage.cjs +52 -0
  48. package/dist/commands/analytics/usage/traffic/timeseries.cjs +83 -0
  49. package/dist/commands/analytics/usage/traffic/totals.cjs +86 -0
  50. package/dist/commands/analytics/usage/traffic.cjs +89 -0
  51. package/dist/commands/analytics/video/index.cjs +89 -0
  52. package/dist/commands/analytics/video/performance/timeseries.cjs +83 -0
  53. package/dist/commands/analytics/video/performance/totals.cjs +80 -0
  54. package/dist/commands/analytics/video/performance.cjs +89 -0
  55. package/dist/commands/analytics/video/published/timeseries.cjs +83 -0
  56. package/dist/commands/analytics/video/published/totals.cjs +80 -0
  57. package/dist/commands/analytics/video/published.cjs +89 -0
  58. package/dist/commands/analytics/video/timeseries.cjs +86 -0
  59. package/dist/commands/analytics/video/totals.cjs +86 -0
  60. package/dist/commands/analytics/video/weekday/timeseries.cjs +86 -0
  61. package/dist/commands/analytics/video/weekday/totals.cjs +83 -0
  62. package/dist/commands/analytics/video/weekday.cjs +89 -0
  63. package/dist/commands/app/add.cjs +76 -0
  64. package/dist/commands/app/delete.cjs +57 -0
  65. package/dist/commands/app/update.cjs +77 -0
  66. package/dist/commands/audience/companies.cjs +116 -0
  67. package/dist/commands/audience/field/list.cjs +83 -0
  68. package/dist/commands/audience/field/remove.cjs +63 -0
  69. package/dist/commands/audience/field/set.cjs +78 -0
  70. package/dist/commands/audience/field/types.cjs +57 -0
  71. package/dist/commands/audience/funnel.cjs +77 -0
  72. package/dist/commands/audience/identity-sources.cjs +64 -0
  73. package/dist/commands/audience/list-collectors.cjs +88 -0
  74. package/dist/commands/audience/list.cjs +122 -0
  75. package/dist/commands/audience/metrics.cjs +89 -0
  76. package/dist/commands/audience/register.cjs +106 -0
  77. package/dist/commands/audience/remove.cjs +72 -0
  78. package/dist/commands/audience/search.cjs +106 -0
  79. package/dist/commands/audience/timelines.cjs +115 -0
  80. package/dist/commands/audience/unregister.cjs +65 -0
  81. package/dist/commands/auth/credentials.cjs +89 -0
  82. package/dist/commands/auth/status.cjs +34 -0
  83. package/dist/commands/category/create.cjs +80 -0
  84. package/dist/commands/category/delete.cjs +70 -0
  85. package/dist/commands/category/index.cjs +11 -0
  86. package/dist/commands/category/list.cjs +98 -0
  87. package/dist/commands/category/update.cjs +134 -0
  88. package/dist/commands/collector/exclude.cjs +56 -0
  89. package/dist/commands/collector/include.cjs +56 -0
  90. package/dist/commands/collector/list.cjs +81 -0
  91. package/dist/commands/comment/add.cjs +102 -0
  92. package/dist/commands/comment/clone.cjs +59 -0
  93. package/dist/commands/comment/delete.cjs +55 -0
  94. package/dist/commands/comment/list.cjs +126 -0
  95. package/dist/commands/comment/promote.cjs +65 -0
  96. package/dist/commands/comment/reaction/add.cjs +81 -0
  97. package/dist/commands/comment/reaction/list.cjs +92 -0
  98. package/dist/commands/comment/reaction/remove.cjs +81 -0
  99. package/dist/commands/comment/set-order.cjs +63 -0
  100. package/dist/commands/comment/update.cjs +63 -0
  101. package/dist/commands/doctor.cjs +129 -0
  102. package/dist/commands/openupload/list.cjs +95 -0
  103. package/dist/commands/openupload/update-file.cjs +85 -0
  104. package/dist/commands/openupload/upload-file.cjs +130 -0
  105. package/dist/commands/player/delete.cjs +66 -0
  106. package/dist/commands/player/embed-versions.cjs +83 -0
  107. package/dist/commands/player/embed.cjs +134 -0
  108. package/dist/commands/player/list.cjs +86 -0
  109. package/dist/commands/player/styles.cjs +70 -0
  110. package/dist/commands/player/update.cjs +80 -0
  111. package/dist/commands/poll/add.cjs +84 -0
  112. package/dist/commands/poll/answer.cjs +89 -0
  113. package/dist/commands/poll/list.cjs +92 -0
  114. package/dist/commands/poll/remove.cjs +57 -0
  115. package/dist/commands/poll/set-options.cjs +84 -0
  116. package/dist/commands/poll/update.cjs +79 -0
  117. package/dist/commands/presentation/page/link-locations.cjs +57 -0
  118. package/dist/commands/presentation/setting/list.cjs +44 -0
  119. package/dist/commands/presentation/setting/update.cjs +67 -0
  120. package/dist/commands/protection/protect.cjs +68 -0
  121. package/dist/commands/protection/unprotect.cjs +65 -0
  122. package/dist/commands/protection/verify.cjs +80 -0
  123. package/dist/commands/session/get-token.cjs +75 -0
  124. package/dist/commands/session/redeem-token.cjs +56 -0
  125. package/dist/commands/setting/update.cjs +79 -0
  126. package/dist/commands/site/get.cjs +73 -0
  127. package/dist/commands/site/search.cjs +93 -0
  128. package/dist/commands/spot/check.cjs +52 -0
  129. package/dist/commands/spot/create.cjs +79 -0
  130. package/dist/commands/spot/delete.cjs +68 -0
  131. package/dist/commands/spot/list.cjs +120 -0
  132. package/dist/commands/spot/reset-version.cjs +53 -0
  133. package/dist/commands/spot/set-videos.cjs +64 -0
  134. package/dist/commands/spot/update.cjs +78 -0
  135. package/dist/commands/tag/list.cjs +98 -0
  136. package/dist/commands/tag/related.cjs +57 -0
  137. package/dist/commands/thumbnail/add.cjs +66 -0
  138. package/dist/commands/thumbnail/data.cjs +60 -0
  139. package/dist/commands/thumbnail/delete.cjs +61 -0
  140. package/dist/commands/thumbnail/duplicate.cjs +67 -0
  141. package/dist/commands/thumbnail/file/delete.cjs +71 -0
  142. package/dist/commands/thumbnail/file/list.cjs +74 -0
  143. package/dist/commands/thumbnail/file/upload.cjs +79 -0
  144. package/dist/commands/thumbnail/index.cjs +11 -0
  145. package/dist/commands/thumbnail/list.cjs +89 -0
  146. package/dist/commands/thumbnail/update.cjs +87 -0
  147. package/dist/commands/user/create.cjs +87 -0
  148. package/dist/commands/user/get-login-token.cjs +72 -0
  149. package/dist/commands/user/get.cjs +67 -0
  150. package/dist/commands/user/list.cjs +95 -0
  151. package/dist/commands/user/redeem-login-token.cjs +55 -0
  152. package/dist/commands/user/send-invitation.cjs +63 -0
  153. package/dist/commands/user/tokens.cjs +80 -0
  154. package/dist/commands/user/update.cjs +121 -0
  155. package/dist/commands/video/delete.cjs +67 -0
  156. package/dist/commands/video/frame.cjs +69 -0
  157. package/dist/commands/video/get.cjs +68 -0
  158. package/dist/commands/video/index.cjs +11 -0
  159. package/dist/commands/video/list.cjs +98 -0
  160. package/dist/commands/video/replace.cjs +126 -0
  161. package/dist/commands/video/section/create.cjs +73 -0
  162. package/dist/commands/video/section/delete.cjs +78 -0
  163. package/dist/commands/video/section/index.cjs +11 -0
  164. package/dist/commands/video/section/list.cjs +75 -0
  165. package/dist/commands/video/section/set-thumbnail.cjs +73 -0
  166. package/dist/commands/video/section/update.cjs +84 -0
  167. package/dist/commands/video/subtitle/archive.cjs +76 -0
  168. package/dist/commands/video/subtitle/create.cjs +80 -0
  169. package/dist/commands/video/subtitle/data.cjs +75 -0
  170. package/dist/commands/video/subtitle/delete.cjs +84 -0
  171. package/dist/commands/video/subtitle/duplicate.cjs +89 -0
  172. package/dist/commands/video/subtitle/index.cjs +11 -0
  173. package/dist/commands/video/subtitle/list.cjs +94 -0
  174. package/dist/commands/video/subtitle/locales.cjs +60 -0
  175. package/dist/commands/video/subtitle/set-primary.cjs +64 -0
  176. package/dist/commands/video/subtitle/types.cjs +42 -0
  177. package/dist/commands/video/subtitle/update.cjs +93 -0
  178. package/dist/commands/video/subtitle/upload.cjs +104 -0
  179. package/dist/commands/video/transcoding-progress.cjs +71 -0
  180. package/dist/commands/video/update.cjs +184 -0
  181. package/dist/commands/video/upload.cjs +151 -0
  182. package/dist/commands/webhook/events.cjs +68 -0
  183. package/dist/commands/webhook/list.cjs +64 -0
  184. package/dist/commands/webhook/sample.cjs +47 -0
  185. package/dist/commands/webhook/subscribe.cjs +66 -0
  186. package/dist/commands/webhook/unsubscribe.cjs +71 -0
  187. package/dist/commands/webinar/attachment/delete.cjs +79 -0
  188. package/dist/commands/webinar/attachment/list.cjs +94 -0
  189. package/dist/commands/webinar/attachment/set-hidden.cjs +85 -0
  190. package/dist/commands/webinar/attachment/upload.cjs +128 -0
  191. package/dist/commands/webinar/clips.cjs +77 -0
  192. package/dist/commands/webinar/create.cjs +107 -0
  193. package/dist/commands/webinar/delete.cjs +62 -0
  194. package/dist/commands/webinar/highlights.cjs +84 -0
  195. package/dist/commands/webinar/index.cjs +11 -0
  196. package/dist/commands/webinar/list-formats.cjs +50 -0
  197. package/dist/commands/webinar/list.cjs +134 -0
  198. package/dist/commands/webinar/log.cjs +69 -0
  199. package/dist/commands/webinar/mail/add.cjs +101 -0
  200. package/dist/commands/webinar/mail/list.cjs +83 -0
  201. package/dist/commands/webinar/mail/preview.cjs +75 -0
  202. package/dist/commands/webinar/mail/remove.cjs +75 -0
  203. package/dist/commands/webinar/mail/send.cjs +68 -0
  204. package/dist/commands/webinar/mail/test.cjs +86 -0
  205. package/dist/commands/webinar/mail/update.cjs +84 -0
  206. package/dist/commands/webinar/metrics.cjs +59 -0
  207. package/dist/commands/webinar/queued-video/add.cjs +81 -0
  208. package/dist/commands/webinar/queued-video/remove.cjs +81 -0
  209. package/dist/commands/webinar/recording/split.cjs +53 -0
  210. package/dist/commands/webinar/recording/start.cjs +53 -0
  211. package/dist/commands/webinar/recording/status.cjs +52 -0
  212. package/dist/commands/webinar/recording/stop.cjs +53 -0
  213. package/dist/commands/webinar/repeat.cjs +65 -0
  214. package/dist/commands/webinar/room/connect.cjs +60 -0
  215. package/dist/commands/webinar/room/info.cjs +60 -0
  216. package/dist/commands/webinar/room/send-recording.cjs +59 -0
  217. package/dist/commands/webinar/room/themes.cjs +63 -0
  218. package/dist/commands/webinar/section/add.cjs +98 -0
  219. package/dist/commands/webinar/section/list.cjs +86 -0
  220. package/dist/commands/webinar/section/remove.cjs +75 -0
  221. package/dist/commands/webinar/section/update.cjs +85 -0
  222. package/dist/commands/webinar/series/apply-recurrence.cjs +68 -0
  223. package/dist/commands/webinar/series/cancel.cjs +73 -0
  224. package/dist/commands/webinar/series/create.cjs +80 -0
  225. package/dist/commands/webinar/series/delete.cjs +73 -0
  226. package/dist/commands/webinar/series/list.cjs +79 -0
  227. package/dist/commands/webinar/series/mapped-objects.cjs +69 -0
  228. package/dist/commands/webinar/series/metrics.cjs +57 -0
  229. package/dist/commands/webinar/series/recurrences.cjs +72 -0
  230. package/dist/commands/webinar/series/set-ondemand.cjs +67 -0
  231. package/dist/commands/webinar/series/skip-recurrence.cjs +79 -0
  232. package/dist/commands/webinar/series/update.cjs +71 -0
  233. package/dist/commands/webinar/series/upload-thumbnail.cjs +117 -0
  234. package/dist/commands/webinar/speaker/add-from-speaker.cjs +78 -0
  235. package/dist/commands/webinar/speaker/add-from-user.cjs +78 -0
  236. package/dist/commands/webinar/speaker/add.cjs +112 -0
  237. package/dist/commands/webinar/speaker/cancel-guest-request.cjs +62 -0
  238. package/dist/commands/webinar/speaker/connection-types.cjs +66 -0
  239. package/dist/commands/webinar/speaker/library.cjs +59 -0
  240. package/dist/commands/webinar/speaker/list.cjs +90 -0
  241. package/dist/commands/webinar/speaker/remove-avatar.cjs +62 -0
  242. package/dist/commands/webinar/speaker/remove.cjs +69 -0
  243. package/dist/commands/webinar/speaker/request-guest.cjs +62 -0
  244. package/dist/commands/webinar/speaker/send-invitation.cjs +62 -0
  245. package/dist/commands/webinar/speaker/set-avatar.cjs +130 -0
  246. package/dist/commands/webinar/speaker/set-order.cjs +95 -0
  247. package/dist/commands/webinar/speaker/update.cjs +90 -0
  248. package/dist/commands/webinar/transcription/connect.cjs +69 -0
  249. package/dist/commands/webinar/transcription/list.cjs +88 -0
  250. package/dist/commands/webinar/transcription/locales.cjs +76 -0
  251. package/dist/commands/webinar/transcription/transcriptionlist.cjs +67 -0
  252. package/dist/commands/webinar/update.cjs +192 -0
  253. package/dist/commands/webinar/upload-image.cjs +133 -0
  254. package/dist/commands/workspace/list.cjs +47 -0
  255. package/dist/commands/workspace/use.cjs +52 -0
  256. package/dist/index.cjs +6 -0
  257. package/dist/lib/analytics-flags.cjs +60 -0
  258. package/dist/lib/audit.cjs +44 -0
  259. package/dist/lib/base-command.cjs +156 -0
  260. package/dist/lib/output.cjs +82 -0
  261. package/dist/lib/pagination.cjs +36 -0
  262. package/dist/lib/term-map.cjs +48 -0
  263. package/dist/upload/chunk-pool.cjs +47 -0
  264. package/dist/upload/chunked-upload.cjs +131 -0
  265. package/dist/upload/types.cjs +9 -0
  266. package/docs/commands/README.md +31 -0
  267. package/docs/commands/action/add.md +36 -0
  268. package/docs/commands/action/delete.md +32 -0
  269. package/docs/commands/action/exclude.md +38 -0
  270. package/docs/commands/action/get.md +47 -0
  271. package/docs/commands/action/include.md +38 -0
  272. package/docs/commands/action/list.md +43 -0
  273. package/docs/commands/action/types.md +34 -0
  274. package/docs/commands/action/update.md +42 -0
  275. package/docs/commands/action/upload.md +36 -0
  276. package/docs/commands/action.md +306 -0
  277. package/docs/commands/analytics/conversions.md +113 -0
  278. package/docs/commands/analytics/live.md +338 -0
  279. package/docs/commands/analytics/usage.md +674 -0
  280. package/docs/commands/analytics/video.md +449 -0
  281. package/docs/commands/analytics.md +1559 -0
  282. package/docs/commands/app/add.md +38 -0
  283. package/docs/commands/app/delete.md +32 -0
  284. package/docs/commands/app/update.md +41 -0
  285. package/docs/commands/app.md +101 -0
  286. package/docs/commands/audience/companies.md +41 -0
  287. package/docs/commands/audience/field.md +119 -0
  288. package/docs/commands/audience/funnel.md +38 -0
  289. package/docs/commands/audience/identity-sources.md +29 -0
  290. package/docs/commands/audience/list-collectors.md +35 -0
  291. package/docs/commands/audience/list.md +42 -0
  292. package/docs/commands/audience/metrics.md +40 -0
  293. package/docs/commands/audience/register.md +45 -0
  294. package/docs/commands/audience/remove.md +35 -0
  295. package/docs/commands/audience/search.md +39 -0
  296. package/docs/commands/audience/timelines.md +41 -0
  297. package/docs/commands/audience/unregister.md +36 -0
  298. package/docs/commands/audience.md +485 -0
  299. package/docs/commands/auth/credentials.md +23 -0
  300. package/docs/commands/auth/status.md +27 -0
  301. package/docs/commands/auth.md +45 -0
  302. package/docs/commands/category/create.md +36 -0
  303. package/docs/commands/category/delete.md +32 -0
  304. package/docs/commands/category/list.md +34 -0
  305. package/docs/commands/category/update.md +39 -0
  306. package/docs/commands/category.md +141 -0
  307. package/docs/commands/collector/exclude.md +33 -0
  308. package/docs/commands/collector/include.md +33 -0
  309. package/docs/commands/collector/list.md +37 -0
  310. package/docs/commands/collector.md +93 -0
  311. package/docs/commands/comment/add.md +43 -0
  312. package/docs/commands/comment/clone.md +35 -0
  313. package/docs/commands/comment/delete.md +32 -0
  314. package/docs/commands/comment/list.md +42 -0
  315. package/docs/commands/comment/promote.md +37 -0
  316. package/docs/commands/comment/reaction.md +106 -0
  317. package/docs/commands/comment/set-order.md +34 -0
  318. package/docs/commands/comment/update.md +36 -0
  319. package/docs/commands/comment.md +330 -0
  320. package/docs/commands/doctor.md +28 -0
  321. package/docs/commands/openupload/list.md +36 -0
  322. package/docs/commands/openupload/update-file.md +40 -0
  323. package/docs/commands/openupload/upload-file.md +39 -0
  324. package/docs/commands/openupload.md +105 -0
  325. package/docs/commands/player/delete.md +32 -0
  326. package/docs/commands/player/embed-versions.md +34 -0
  327. package/docs/commands/player/embed.md +51 -0
  328. package/docs/commands/player/list.md +32 -0
  329. package/docs/commands/player/styles.md +32 -0
  330. package/docs/commands/player/update.md +37 -0
  331. package/docs/commands/player.md +193 -0
  332. package/docs/commands/poll/add.md +33 -0
  333. package/docs/commands/poll/answer.md +38 -0
  334. package/docs/commands/poll/list.md +33 -0
  335. package/docs/commands/poll/remove.md +32 -0
  336. package/docs/commands/poll/set-options.md +35 -0
  337. package/docs/commands/poll/update.md +41 -0
  338. package/docs/commands/poll.md +187 -0
  339. package/docs/commands/presentation/page.md +29 -0
  340. package/docs/commands/presentation/setting.md +58 -0
  341. package/docs/commands/presentation.md +82 -0
  342. package/docs/commands/protection/protect.md +37 -0
  343. package/docs/commands/protection/unprotect.md +34 -0
  344. package/docs/commands/protection/verify.md +39 -0
  345. package/docs/commands/protection.md +100 -0
  346. package/docs/commands/session/get-token.md +38 -0
  347. package/docs/commands/session/redeem-token.md +32 -0
  348. package/docs/commands/session.md +65 -0
  349. package/docs/commands/setting/update.md +37 -0
  350. package/docs/commands/setting.md +37 -0
  351. package/docs/commands/site/get.md +35 -0
  352. package/docs/commands/site/search.md +38 -0
  353. package/docs/commands/site.md +68 -0
  354. package/docs/commands/spot/check.md +32 -0
  355. package/docs/commands/spot/create.md +38 -0
  356. package/docs/commands/spot/delete.md +32 -0
  357. package/docs/commands/spot/list.md +43 -0
  358. package/docs/commands/spot/reset-version.md +32 -0
  359. package/docs/commands/spot/set-videos.md +35 -0
  360. package/docs/commands/spot/update.md +40 -0
  361. package/docs/commands/spot.md +222 -0
  362. package/docs/commands/tag/list.md +44 -0
  363. package/docs/commands/tag/related.md +32 -0
  364. package/docs/commands/tag.md +71 -0
  365. package/docs/commands/thumbnail/add.md +33 -0
  366. package/docs/commands/thumbnail/data.md +35 -0
  367. package/docs/commands/thumbnail/delete.md +32 -0
  368. package/docs/commands/thumbnail/duplicate.md +37 -0
  369. package/docs/commands/thumbnail/file.md +90 -0
  370. package/docs/commands/thumbnail/list.md +37 -0
  371. package/docs/commands/thumbnail/update.md +44 -0
  372. package/docs/commands/thumbnail.md +293 -0
  373. package/docs/commands/user/create.md +41 -0
  374. package/docs/commands/user/get-login-token.md +37 -0
  375. package/docs/commands/user/get.md +37 -0
  376. package/docs/commands/user/list.md +40 -0
  377. package/docs/commands/user/redeem-login-token.md +32 -0
  378. package/docs/commands/user/send-invitation.md +37 -0
  379. package/docs/commands/user/tokens.md +34 -0
  380. package/docs/commands/user/update.md +44 -0
  381. package/docs/commands/user.md +267 -0
  382. package/docs/commands/video/delete.md +32 -0
  383. package/docs/commands/video/frame.md +37 -0
  384. package/docs/commands/video/get.md +32 -0
  385. package/docs/commands/video/list.md +33 -0
  386. package/docs/commands/video/replace.md +37 -0
  387. package/docs/commands/video/section.md +177 -0
  388. package/docs/commands/video/subtitle.md +362 -0
  389. package/docs/commands/video/transcoding-progress.md +32 -0
  390. package/docs/commands/video/update.md +45 -0
  391. package/docs/commands/video/upload.md +44 -0
  392. package/docs/commands/video.md +801 -0
  393. package/docs/commands/webhook/events.md +34 -0
  394. package/docs/commands/webhook/list.md +29 -0
  395. package/docs/commands/webhook/sample.md +32 -0
  396. package/docs/commands/webhook/subscribe.md +33 -0
  397. package/docs/commands/webhook/unsubscribe.md +35 -0
  398. package/docs/commands/webhook.md +143 -0
  399. package/docs/commands/webinar/attachment.md +135 -0
  400. package/docs/commands/webinar/clips.md +32 -0
  401. package/docs/commands/webinar/create.md +40 -0
  402. package/docs/commands/webinar/delete.md +32 -0
  403. package/docs/commands/webinar/highlights.md +37 -0
  404. package/docs/commands/webinar/list-formats.md +29 -0
  405. package/docs/commands/webinar/list.md +41 -0
  406. package/docs/commands/webinar/log.md +32 -0
  407. package/docs/commands/webinar/mail.md +238 -0
  408. package/docs/commands/webinar/metrics.md +32 -0
  409. package/docs/commands/webinar/queued-video.md +65 -0
  410. package/docs/commands/webinar/recording.md +113 -0
  411. package/docs/commands/webinar/repeat.md +35 -0
  412. package/docs/commands/webinar/room.md +110 -0
  413. package/docs/commands/webinar/section.md +134 -0
  414. package/docs/commands/webinar/series.md +365 -0
  415. package/docs/commands/webinar/speaker.md +430 -0
  416. package/docs/commands/webinar/transcription.md +125 -0
  417. package/docs/commands/webinar/update.md +43 -0
  418. package/docs/commands/webinar/upload-image.md +42 -0
  419. package/docs/commands/webinar.md +2030 -0
  420. package/docs/commands/workspace/list.md +27 -0
  421. package/docs/commands/workspace/use.md +32 -0
  422. package/docs/commands/workspace.md +54 -0
  423. package/docs/guides/api-spec-upgrade.md +92 -0
  424. package/docs/guides/getting-started.md +66 -0
  425. package/oclif.manifest.json +21609 -0
  426. package/package.json +71 -0
@@ -0,0 +1,57 @@
1
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../../lib/output.cjs");
5
+ let chalk = require("chalk");
6
+ chalk = require_runtime.__toESM(chalk);
7
+ //#region src/commands/audience/field/types.ts
8
+ /**
9
+ * Audience field types command — list valid audience field types (AUD-12).
10
+ *
11
+ * POST form with no required body fields. Returns list of valid type identifiers
12
+ * with human-readable labels — used to discover valid values for audience field set --type.
13
+ *
14
+ * 3-level oclif topic via directory structure (audience/field/types.ts).
15
+ */
16
+ var AudienceFieldTypes = class AudienceFieldTypes extends require_lib_base_command.AuthenticatedCommand {
17
+ static description = "List valid audience field types";
18
+ static agentMetadata = {
19
+ api_endpoint: "POST /audience/field/types",
20
+ auth_scope: "read",
21
+ output_shape: {
22
+ type: "table",
23
+ columns: ["Type", "Label"]
24
+ },
25
+ side_effects: "none"
26
+ };
27
+ static examples = ["<%= config.bin %> audience field types", "<%= config.bin %> audience field types --json"];
28
+ static enableJsonFlag = true;
29
+ static flags = { ...require_lib_base_command.AuthenticatedCommand.baseFlags };
30
+ static args = {};
31
+ async run() {
32
+ const { flags: _flags } = await this.parse(AudienceFieldTypes);
33
+ this.printWorkspaceHeader();
34
+ const { data, error } = await this.apiClient.POST("/audience/field/types", {
35
+ body: {},
36
+ headers: { "Content-Type": "application/x-www-form-urlencoded" }
37
+ });
38
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
39
+ const resp = data;
40
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
41
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
42
+ ok: true,
43
+ data: rows,
44
+ summary: `${rows.length} field type(s)`,
45
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
46
+ });
47
+ if (rows.length === 0) {
48
+ this.log("No field types found.");
49
+ return;
50
+ }
51
+ const table = require_lib_output.renderTable(["Type", "Label"], rows.map((r) => [String(r.type ?? ""), String(r.label ?? "")]));
52
+ this.log(table.toString());
53
+ this.log(chalk.default.dim(`${rows.length} field type(s)`));
54
+ }
55
+ };
56
+ //#endregion
57
+ module.exports = AudienceFieldTypes;
@@ -0,0 +1,77 @@
1
+ require("../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../lib/output.cjs");
5
+ let _oclif_core = require("@oclif/core");
6
+ //#region src/commands/audience/funnel.ts
7
+ /**
8
+ * Audience funnel command — get audience funnel analytics (AUD-07).
9
+ *
10
+ * Returns a single object (Pitfall 6) — key-value rendering, NOT renderTable.
11
+ * Metrics: visits, views, engagement, conversions, new_conversions.
12
+ * Uses _fmt-suffixed versions when available for human-readable numbers.
13
+ */
14
+ var AudienceFunnel = class AudienceFunnel extends require_lib_base_command.AuthenticatedCommand {
15
+ static description = "Get audience funnel analytics";
16
+ static agentMetadata = {
17
+ api_endpoint: "GET /audience/funnel",
18
+ auth_scope: "read",
19
+ output_shape: { type: "key-value" },
20
+ side_effects: "none"
21
+ };
22
+ static examples = [
23
+ "<%= config.bin %> audience funnel",
24
+ "<%= config.bin %> audience funnel --objects \"123 456\" --json",
25
+ "<%= config.bin %> audience funnel --live-type on_demand --resolve-recordings"
26
+ ];
27
+ static enableJsonFlag = true;
28
+ static flags = {
29
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
30
+ objects: _oclif_core.Flags.string({
31
+ description: "Filter by object IDs (space-separated)",
32
+ required: false
33
+ }),
34
+ "live-type": _oclif_core.Flags.string({
35
+ description: "Live event type filter",
36
+ required: false
37
+ }),
38
+ "resolve-recordings": _oclif_core.Flags.boolean({
39
+ description: "Resolve recording details",
40
+ required: false
41
+ }),
42
+ "resolve-live-series": _oclif_core.Flags.boolean({
43
+ description: "Resolve live series details",
44
+ required: false
45
+ })
46
+ };
47
+ static args = {};
48
+ async run() {
49
+ const { flags } = await this.parse(AudienceFunnel);
50
+ this.printWorkspaceHeader();
51
+ const { data, error } = await this.apiClient.GET("/audience/funnel", { params: { query: {
52
+ objects: flags.objects,
53
+ live_type: flags["live-type"],
54
+ resolve_recordings_p: flags["resolve-recordings"] || void 0,
55
+ resolve_live_series_p: flags["resolve-live-series"] || void 0
56
+ } } });
57
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
58
+ const metrics = data?.data;
59
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
60
+ ok: true,
61
+ data: metrics ?? {},
62
+ summary: "Audience funnel analytics",
63
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
64
+ });
65
+ if (!metrics || Object.keys(metrics).length === 0) {
66
+ this.log("No funnel data found.");
67
+ return;
68
+ }
69
+ this.log(`Visits: ${metrics.visits_fmt ?? metrics.visits ?? ""}`);
70
+ this.log(`Views: ${metrics.views_fmt ?? metrics.views ?? ""}`);
71
+ this.log(`Engagement: ${metrics.engagement_fmt ?? metrics.engagement ?? ""}`);
72
+ this.log(`Conversions: ${metrics.conversions_fmt ?? metrics.conversions ?? ""}`);
73
+ this.log(`New conversions: ${metrics.new_conversions_fmt ?? metrics.new_conversions ?? ""}`);
74
+ }
75
+ };
76
+ //#endregion
77
+ module.exports = AudienceFunnel;
@@ -0,0 +1,64 @@
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../lib/output.cjs");
5
+ let chalk = require("chalk");
6
+ chalk = require_runtime.__toESM(chalk);
7
+ //#region src/commands/audience/identity-sources.ts
8
+ /**
9
+ * Audience identity-sources command — list audience identity sources (AUD-10).
10
+ *
11
+ * Non-paginated list of identity sources configured in the workspace.
12
+ * No pagination flags per spec.
13
+ */
14
+ var AudienceIdentitySources = class AudienceIdentitySources extends require_lib_base_command.AuthenticatedCommand {
15
+ static description = "List audience identity sources";
16
+ static agentMetadata = {
17
+ api_endpoint: "GET /audience/identity-sources",
18
+ auth_scope: "read",
19
+ output_shape: {
20
+ type: "table",
21
+ columns: [
22
+ "Source",
23
+ "Title",
24
+ "Service"
25
+ ]
26
+ },
27
+ side_effects: "none"
28
+ };
29
+ static examples = ["<%= config.bin %> audience identity-sources", "<%= config.bin %> audience identity-sources --json"];
30
+ static enableJsonFlag = true;
31
+ static flags = { ...require_lib_base_command.AuthenticatedCommand.baseFlags };
32
+ static args = {};
33
+ async run() {
34
+ const { flags: _flags } = await this.parse(AudienceIdentitySources);
35
+ this.printWorkspaceHeader();
36
+ const { data, error } = await this.apiClient.GET("/audience/identity-sources", { params: { query: {} } });
37
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
38
+ const resp = data;
39
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
40
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
41
+ ok: true,
42
+ data: rows,
43
+ summary: `${rows.length} identity source(s)`,
44
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
45
+ });
46
+ if (rows.length === 0) {
47
+ this.log("No identity sources found.");
48
+ return;
49
+ }
50
+ const table = require_lib_output.renderTable([
51
+ "Source",
52
+ "Title",
53
+ "Service"
54
+ ], rows.map((r) => [
55
+ String(r.identity_source ?? ""),
56
+ String(r.title ?? ""),
57
+ String(r.service ?? "")
58
+ ]));
59
+ this.log(table.toString());
60
+ this.log(chalk.default.dim(`${rows.length} identity source(s)`));
61
+ }
62
+ };
63
+ //#endregion
64
+ module.exports = AudienceIdentitySources;
@@ -0,0 +1,88 @@
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../lib/output.cjs");
5
+ let _oclif_core = require("@oclif/core");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/audience/list-collectors.ts
9
+ /**
10
+ * Audience list-collectors command — list collectors linked to audience (AUD-11).
11
+ *
12
+ * Non-paginated list of collectors (forms/actions) tied to audience registration.
13
+ * No pagination flags per spec.
14
+ */
15
+ var AudienceListCollectors = class AudienceListCollectors extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "List collectors linked to audience";
17
+ static agentMetadata = {
18
+ api_endpoint: "GET /audience/list-collectors",
19
+ auth_scope: "read",
20
+ output_shape: {
21
+ type: "table",
22
+ columns: [
23
+ "Action ID",
24
+ "Name",
25
+ "Start",
26
+ "End",
27
+ "Require Email"
28
+ ]
29
+ },
30
+ side_effects: "none"
31
+ };
32
+ static examples = [
33
+ "<%= config.bin %> audience list-collectors",
34
+ "<%= config.bin %> audience list-collectors --object-id 123",
35
+ "<%= config.bin %> audience list-collectors --action-id 456 --json"
36
+ ];
37
+ static enableJsonFlag = true;
38
+ static flags = {
39
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
40
+ "object-id": _oclif_core.Flags.string({
41
+ description: "Filter by object ID",
42
+ required: false
43
+ }),
44
+ "action-id": _oclif_core.Flags.string({
45
+ description: "Filter by action ID",
46
+ required: false
47
+ })
48
+ };
49
+ static args = {};
50
+ async run() {
51
+ const { flags } = await this.parse(AudienceListCollectors);
52
+ this.printWorkspaceHeader();
53
+ const { data, error } = await this.apiClient.GET("/audience/list-collectors", { params: { query: {
54
+ object_id: flags["object-id"] ? Number(flags["object-id"]) : void 0,
55
+ action_id: flags["action-id"] ? Number(flags["action-id"]) : void 0
56
+ } } });
57
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
58
+ const resp = data;
59
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
60
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
61
+ ok: true,
62
+ data: rows,
63
+ summary: `${rows.length} collector(s)`,
64
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
65
+ });
66
+ if (rows.length === 0) {
67
+ this.log("No collectors found.");
68
+ return;
69
+ }
70
+ const table = require_lib_output.renderTable([
71
+ "Action ID",
72
+ "Name",
73
+ "Start",
74
+ "End",
75
+ "Require Email"
76
+ ], rows.map((r) => [
77
+ String(r.action_id ?? ""),
78
+ String(r.name ?? ""),
79
+ String(r.start_time ?? ""),
80
+ String(r.end_time ?? ""),
81
+ String(r.require_email_p ?? "")
82
+ ]));
83
+ this.log(table.toString());
84
+ this.log(chalk.default.dim(`${rows.length} collector(s)`));
85
+ }
86
+ };
87
+ //#endregion
88
+ module.exports = AudienceListCollectors;
@@ -0,0 +1,122 @@
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../lib/output.cjs");
5
+ let _oclif_core = require("@oclif/core");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/audience/list.ts
9
+ /**
10
+ * Audience list command — lists audience members in the active workspace (AUD-01).
11
+ *
12
+ * Exposes pagination directly (D-4: no fetchAllPages for audience list).
13
+ * Renders a cli-table3 table with: UUID, Name, Email, Company, Score, Timelines.
14
+ */
15
+ var AudienceList = class AudienceList extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "List audience members";
17
+ static agentMetadata = {
18
+ api_endpoint: "GET /audience/list",
19
+ auth_scope: "read",
20
+ output_shape: {
21
+ type: "table",
22
+ columns: [
23
+ "UUID",
24
+ "Name",
25
+ "Email",
26
+ "Company",
27
+ "Score",
28
+ "Timelines"
29
+ ]
30
+ },
31
+ side_effects: "none"
32
+ };
33
+ static examples = [
34
+ "<%= config.bin %> audience list",
35
+ "<%= config.bin %> audience list --page 2 --size 50",
36
+ "<%= config.bin %> audience list --search \"john\" --identified --json"
37
+ ];
38
+ static enableJsonFlag = true;
39
+ static flags = {
40
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
41
+ page: _oclif_core.Flags.integer({
42
+ description: "Page number",
43
+ required: false
44
+ }),
45
+ size: _oclif_core.Flags.integer({
46
+ description: "Page size (max 500)",
47
+ required: false
48
+ }),
49
+ offset: _oclif_core.Flags.integer({
50
+ description: "Offset for pagination",
51
+ required: false
52
+ }),
53
+ orderby: _oclif_core.Flags.string({
54
+ description: "Order by field (recent, timeline_count, score, first)",
55
+ required: false
56
+ }),
57
+ order: _oclif_core.Flags.string({
58
+ description: "Sort direction (asc/desc)",
59
+ required: false
60
+ }),
61
+ search: _oclif_core.Flags.string({
62
+ description: "Free-text search across names and emails",
63
+ required: false
64
+ }),
65
+ identified: _oclif_core.Flags.boolean({
66
+ description: "Filter to identified profiles only",
67
+ required: false,
68
+ allowNo: true
69
+ }),
70
+ objects: _oclif_core.Flags.string({
71
+ description: "Filter by viewed object IDs (space-separated)",
72
+ required: false
73
+ })
74
+ };
75
+ static args = {};
76
+ async run() {
77
+ const { flags } = await this.parse(AudienceList);
78
+ this.printWorkspaceHeader();
79
+ const { data, error } = await this.apiClient.GET("/audience/list", { params: { query: {
80
+ p: flags.page,
81
+ size: flags.size,
82
+ offset: flags.offset,
83
+ orderby: flags.orderby,
84
+ order: flags.order,
85
+ search: flags.search,
86
+ identified: flags.identified,
87
+ objects: flags.objects
88
+ } } });
89
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
90
+ const resp = data;
91
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
92
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
93
+ ok: true,
94
+ data: rows,
95
+ summary: `${rows.length} member(s)`,
96
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
97
+ });
98
+ if (rows.length === 0) {
99
+ this.log("No audience members found.");
100
+ return;
101
+ }
102
+ const table = require_lib_output.renderTable([
103
+ "UUID",
104
+ "Name",
105
+ "Email",
106
+ "Company",
107
+ "Score",
108
+ "Timelines"
109
+ ], rows.map((r) => [
110
+ String(r.uuid ?? ""),
111
+ String(r.name ?? ""),
112
+ String(r.email ?? ""),
113
+ String(r.company ?? ""),
114
+ String(r.score ?? ""),
115
+ String(r.timeline_count ?? "")
116
+ ]));
117
+ this.log(table.toString());
118
+ this.log(chalk.default.dim(`${rows.length} member(s)`));
119
+ }
120
+ };
121
+ //#endregion
122
+ module.exports = AudienceList;
@@ -0,0 +1,89 @@
1
+ require("../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../lib/output.cjs");
5
+ let _oclif_core = require("@oclif/core");
6
+ //#region src/commands/audience/metrics.ts
7
+ /**
8
+ * Audience metrics command — aggregate metrics for the audience (AUD-06).
9
+ *
10
+ * Returns a single object (Pitfall 6) — key-value rendering, NOT renderTable.
11
+ * Metrics: profile_count, identified_count, timeline_count, timeline_engagement,
12
+ * event_count, score_avg.
13
+ */
14
+ var AudienceMetrics = class AudienceMetrics extends require_lib_base_command.AuthenticatedCommand {
15
+ static description = "Get audience aggregate metrics";
16
+ static agentMetadata = {
17
+ api_endpoint: "GET /audience/metrics",
18
+ auth_scope: "read",
19
+ output_shape: { type: "key-value" },
20
+ side_effects: "none"
21
+ };
22
+ static examples = [
23
+ "<%= config.bin %> audience metrics",
24
+ "<%= config.bin %> audience metrics --identified --json",
25
+ "<%= config.bin %> audience metrics --search \"acme\" --size 100"
26
+ ];
27
+ static enableJsonFlag = true;
28
+ static flags = {
29
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
30
+ page: _oclif_core.Flags.integer({
31
+ description: "Page number",
32
+ required: false
33
+ }),
34
+ size: _oclif_core.Flags.integer({
35
+ description: "Page size",
36
+ required: false
37
+ }),
38
+ offset: _oclif_core.Flags.integer({
39
+ description: "Offset for pagination",
40
+ required: false
41
+ }),
42
+ search: _oclif_core.Flags.string({
43
+ description: "Free-text search filter",
44
+ required: false
45
+ }),
46
+ identified: _oclif_core.Flags.boolean({
47
+ description: "Filter to identified profiles only",
48
+ required: false,
49
+ allowNo: true
50
+ }),
51
+ objects: _oclif_core.Flags.string({
52
+ description: "Filter by viewed object IDs (space-separated)",
53
+ required: false
54
+ })
55
+ };
56
+ static args = {};
57
+ async run() {
58
+ const { flags } = await this.parse(AudienceMetrics);
59
+ this.printWorkspaceHeader();
60
+ const { data, error } = await this.apiClient.GET("/audience/metrics", { params: { query: {
61
+ p: flags.page,
62
+ size: flags.size,
63
+ offset: flags.offset,
64
+ search: flags.search,
65
+ identified: flags.identified,
66
+ objects: flags.objects
67
+ } } });
68
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
69
+ const metrics = data?.data;
70
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
71
+ ok: true,
72
+ data: metrics ?? {},
73
+ summary: "Audience metrics",
74
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
75
+ });
76
+ if (!metrics || Object.keys(metrics).length === 0) {
77
+ this.log("No metrics data found.");
78
+ return;
79
+ }
80
+ this.log(`Profile count: ${metrics.profile_count ?? ""}`);
81
+ this.log(`Identified count: ${metrics.identified_count ?? ""}`);
82
+ this.log(`Timeline count: ${metrics.timeline_count ?? ""}`);
83
+ this.log(`Timeline engagement: ${metrics.timeline_engagement ?? ""}`);
84
+ this.log(`Event count: ${metrics.event_count ?? ""}`);
85
+ this.log(`Score average: ${metrics.score_avg ?? ""}`);
86
+ }
87
+ };
88
+ //#endregion
89
+ module.exports = AudienceMetrics;
@@ -0,0 +1,106 @@
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../lib/output.cjs");
5
+ let _oclif_core = require("@oclif/core");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/audience/register.ts
9
+ /**
10
+ * Audience register command — register an audience contact (AUD-03).
11
+ *
12
+ * POST form mutation using application/x-www-form-urlencoded body.
13
+ * email is required per the OpenAPI spec.
14
+ */
15
+ var AudienceRegister = class AudienceRegister extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Register an audience contact";
17
+ static agentMetadata = {
18
+ api_endpoint: "POST /audience/register",
19
+ auth_scope: "write",
20
+ output_shape: { type: "none" },
21
+ side_effects: "creates"
22
+ };
23
+ static examples = [
24
+ "<%= config.bin %> audience register --email \"jane@example.com\"",
25
+ "<%= config.bin %> audience register --email \"john@acme.com\" --object-id 123 --firstname \"John\" --lastname \"Doe\"",
26
+ "<%= config.bin %> audience register --email \"user@co.com\" --company \"Acme Corp\" --source api --json"
27
+ ];
28
+ static enableJsonFlag = true;
29
+ static flags = {
30
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
31
+ email: _oclif_core.Flags.string({
32
+ description: "Contact email address",
33
+ required: true
34
+ }),
35
+ "object-id": _oclif_core.Flags.string({
36
+ description: "Webinar/video ID to register for",
37
+ required: false
38
+ }),
39
+ uuid: _oclif_core.Flags.string({
40
+ description: "Existing contact UUID",
41
+ required: false
42
+ }),
43
+ "action-id": _oclif_core.Flags.string({
44
+ description: "Collector action ID",
45
+ required: false
46
+ }),
47
+ firstname: _oclif_core.Flags.string({
48
+ description: "First name",
49
+ required: false
50
+ }),
51
+ lastname: _oclif_core.Flags.string({
52
+ description: "Last name",
53
+ required: false
54
+ }),
55
+ company: _oclif_core.Flags.string({
56
+ description: "Company name",
57
+ required: false
58
+ }),
59
+ phone: _oclif_core.Flags.string({
60
+ description: "Phone number",
61
+ required: false
62
+ }),
63
+ "return-url": _oclif_core.Flags.string({
64
+ description: "Base URL for tracking URL",
65
+ required: false
66
+ }),
67
+ source: _oclif_core.Flags.string({
68
+ description: "Registration source (api, import, site, custom)",
69
+ required: false
70
+ })
71
+ };
72
+ static args = {};
73
+ async run() {
74
+ const { flags } = await this.parse(AudienceRegister);
75
+ this.printWorkspaceHeader();
76
+ const body = { email: flags.email };
77
+ if (flags["object-id"] !== void 0) body.object_id = Number(flags["object-id"]);
78
+ if (flags.uuid !== void 0) body.uuid = flags.uuid;
79
+ if (flags["action-id"] !== void 0) body.action_id = Number(flags["action-id"]);
80
+ if (flags.firstname !== void 0) body.firstname = flags.firstname;
81
+ if (flags.lastname !== void 0) body.lastname = flags.lastname;
82
+ if (flags.company !== void 0) body.company = flags.company;
83
+ if (flags.phone !== void 0) body.phone = flags.phone;
84
+ if (flags["return-url"] !== void 0) body.return_url = flags["return-url"];
85
+ if (flags.source !== void 0) body.source = flags.source;
86
+ const { data, error } = await this.apiClient.POST("/audience/register", {
87
+ body,
88
+ headers: { "Content-Type": "application/x-www-form-urlencoded" }
89
+ });
90
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
91
+ const resp = data;
92
+ const uuid = resp?.uuid ?? resp?.data?.uuid;
93
+ const trackingUrl = resp?.tracking_url ?? resp?.data?.tracking_url;
94
+ this.log(chalk.default.green("Contact registered"));
95
+ if (uuid) this.log(`UUID: ${uuid}`);
96
+ if (trackingUrl) this.log(`Tracking URL: ${trackingUrl}`);
97
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
98
+ ok: true,
99
+ data,
100
+ summary: "Contact registered",
101
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
102
+ });
103
+ }
104
+ };
105
+ //#endregion
106
+ module.exports = AudienceRegister;
@@ -0,0 +1,72 @@
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../lib/term-map.cjs");
3
+ const require_lib_base_command = require("../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../lib/output.cjs");
5
+ let _oclif_core = require("@oclif/core");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ let _clack_prompts = require("@clack/prompts");
9
+ //#region src/commands/audience/remove.ts
10
+ /**
11
+ * Audience remove command — permanently remove an audience contact (AUD-05).
12
+ *
13
+ * DESTRUCTIVE: Requires confirmation prompt before executing (T-07-08 mitigation).
14
+ * JSON mode skips confirmation (automation use case).
15
+ *
16
+ * POST form mutation. No required body fields per spec.
17
+ */
18
+ var AudienceRemove = class AudienceRemove extends require_lib_base_command.AuthenticatedCommand {
19
+ static description = "Permanently remove an audience contact";
20
+ static agentMetadata = {
21
+ api_endpoint: "POST /audience/remove",
22
+ auth_scope: "write",
23
+ output_shape: { type: "none" },
24
+ side_effects: "destructive"
25
+ };
26
+ static examples = [
27
+ "<%= config.bin %> audience remove --email \"jane@example.com\"",
28
+ "<%= config.bin %> audience remove --uuid \"abc-def-ghi\"",
29
+ "<%= config.bin %> audience remove --email \"user@co.com\" --json"
30
+ ];
31
+ static enableJsonFlag = true;
32
+ static flags = {
33
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
34
+ email: _oclif_core.Flags.string({
35
+ description: "Contact email address",
36
+ required: false
37
+ }),
38
+ uuid: _oclif_core.Flags.string({
39
+ description: "Contact UUID",
40
+ required: false
41
+ })
42
+ };
43
+ static args = {};
44
+ async run() {
45
+ const { flags } = await this.parse(AudienceRemove);
46
+ this.printWorkspaceHeader();
47
+ if (!this.jsonEnabled()) {
48
+ const confirmed = await (0, _clack_prompts.confirm)({ message: `Permanently remove contact from ${this.activeWorkspace.domain}? This cannot be undone.` });
49
+ if (!confirmed || typeof confirmed === "symbol") {
50
+ this.log("Cancelled.");
51
+ this.exit(2);
52
+ }
53
+ }
54
+ const body = {};
55
+ if (flags.email !== void 0) body.email = flags.email;
56
+ if (flags.uuid !== void 0) body.uuid = flags.uuid;
57
+ const { data, error } = await this.apiClient.POST("/audience/remove", {
58
+ body,
59
+ headers: { "Content-Type": "application/x-www-form-urlencoded" }
60
+ });
61
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
62
+ this.log(chalk.default.green("Contact removed"));
63
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
64
+ ok: true,
65
+ data,
66
+ summary: "Contact removed",
67
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "audience" }]
68
+ });
69
+ }
70
+ };
71
+ //#endregion
72
+ module.exports = AudienceRemove;