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,89 @@
1
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../lib/term-map.cjs");
3
+ const require_lib_analytics_flags = require("../../../lib/analytics-flags.cjs");
4
+ const require_lib_base_command = require("../../../lib/base-command.cjs");
5
+ const require_lib_output = require("../../../lib/output.cjs");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/analytics/usage/spots.ts
9
+ /**
10
+ * Analytics usage spots command — returns usage analytics broken down by spot.
11
+ *
12
+ * Uses GET /analytics/data/usage/spots.
13
+ * Supports pagination via p/size query params.
14
+ */
15
+ var AnalyticsUsageSpots = class AnalyticsUsageSpots extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Get usage analytics by spot";
17
+ static examples = [
18
+ "<%= config.bin %> analytics usage spots --date-expression thismonth",
19
+ "<%= config.bin %> analytics usage spots --date-start 2024-01-01 --date-end 2024-01-31 --page 1 --size 20",
20
+ "<%= config.bin %> analytics usage spots --json"
21
+ ];
22
+ static enableJsonFlag = true;
23
+ static agentMetadata = {
24
+ api_endpoint: "GET /analytics/data/usage/spots",
25
+ auth_scope: "read",
26
+ output_shape: {
27
+ type: "table",
28
+ columns: [
29
+ "Spot",
30
+ "Plays",
31
+ "Engagement",
32
+ "Traffic",
33
+ "Impressions"
34
+ ]
35
+ },
36
+ side_effects: "none"
37
+ };
38
+ static flags = {
39
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
40
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
41
+ ...require_lib_analytics_flags.ANALYTICS_PAGINATION_FLAGS,
42
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
43
+ };
44
+ async run() {
45
+ const { flags } = await this.parse(AnalyticsUsageSpots);
46
+ this.printWorkspaceHeader();
47
+ const { data, error } = await this.apiClient.GET("/analytics/data/usage/spots", { params: { query: {
48
+ date_start: flags["date-start"],
49
+ date_end: flags["date-end"],
50
+ date_expression: flags["date-expression"],
51
+ selection: flags.selection,
52
+ groupby: flags.groupby,
53
+ orderby: flags.orderby,
54
+ order: flags.order,
55
+ p: flags.page,
56
+ size: flags.size
57
+ } } });
58
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
59
+ const resp = data;
60
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
61
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
62
+ ok: true,
63
+ data: rows,
64
+ summary: `${rows.length} row(s)`,
65
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
66
+ });
67
+ if (rows.length === 0) {
68
+ this.log("No data found.");
69
+ return;
70
+ }
71
+ const table = require_lib_output.renderTable([
72
+ "Spot",
73
+ "Plays",
74
+ "Engagement",
75
+ "Traffic",
76
+ "Impressions"
77
+ ], rows.map((row) => [
78
+ String(row.spot ?? row.spot_id ?? ""),
79
+ String(row.plays ?? ""),
80
+ String(row.engagement ?? ""),
81
+ String(row.traffic ?? ""),
82
+ String(row.impressions ?? "")
83
+ ]));
84
+ this.log(table.toString());
85
+ this.log(chalk.default.dim(`${rows.length} row(s)`));
86
+ }
87
+ };
88
+ //#endregion
89
+ module.exports = AnalyticsUsageSpots;
@@ -0,0 +1,52 @@
1
+ const require_lib_term_map = require("../../../lib/term-map.cjs");
2
+ const require_lib_analytics_flags = require("../../../lib/analytics-flags.cjs");
3
+ const require_lib_base_command = require("../../../lib/base-command.cjs");
4
+ const require_lib_output = require("../../../lib/output.cjs");
5
+ //#region src/commands/analytics/usage/storage.ts
6
+ /**
7
+ * Analytics usage storage command — returns current storage usage as a single object.
8
+ *
9
+ * Uses GET /analytics/data/usage/storage.
10
+ * Anomalous: no date params (API silently ignores them), no pagination, single-object response.
11
+ * Per D-3, date flags are exposed for consistency but the API does not use them.
12
+ */
13
+ var AnalyticsUsageStorage = class AnalyticsUsageStorage extends require_lib_base_command.AuthenticatedCommand {
14
+ static description = "Get storage usage analytics";
15
+ static examples = [
16
+ "<%= config.bin %> analytics usage storage",
17
+ "<%= config.bin %> analytics usage storage --json",
18
+ "<%= config.bin %> analytics usage storage --selection videos"
19
+ ];
20
+ static enableJsonFlag = true;
21
+ static agentMetadata = {
22
+ api_endpoint: "GET /analytics/data/usage/storage",
23
+ auth_scope: "read",
24
+ output_shape: { type: "key-value" },
25
+ side_effects: "none"
26
+ };
27
+ static flags = {
28
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
29
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
30
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
31
+ };
32
+ async run() {
33
+ const { flags } = await this.parse(AnalyticsUsageStorage);
34
+ this.printWorkspaceHeader();
35
+ const { data, error } = await this.apiClient.GET("/analytics/data/usage/storage");
36
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
37
+ const storageData = data?.data;
38
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
39
+ ok: true,
40
+ data: storageData ?? {},
41
+ summary: "Storage usage data",
42
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
43
+ });
44
+ if (!storageData || Object.keys(storageData).length === 0) {
45
+ this.log("No storage data found.");
46
+ return;
47
+ }
48
+ for (const [key, value] of Object.entries(storageData)) this.log(`${key}: ${value}`);
49
+ }
50
+ };
51
+ //#endregion
52
+ module.exports = AnalyticsUsageStorage;
@@ -0,0 +1,83 @@
1
+ const require_runtime = require("../../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../../lib/term-map.cjs");
3
+ const require_lib_analytics_flags = require("../../../../lib/analytics-flags.cjs");
4
+ const require_lib_base_command = require("../../../../lib/base-command.cjs");
5
+ const require_lib_output = require("../../../../lib/output.cjs");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/analytics/usage/traffic/timeseries.ts
9
+ /**
10
+ * Analytics usage traffic timeseries command — returns traffic usage analytics time series data.
11
+ *
12
+ * Uses GET /analytics/data/usage/traffic/timeseries.
13
+ * No pagination — the timeseries endpoint does not support p/size.
14
+ */
15
+ var AnalyticsUsageTrafficTimeseries = class AnalyticsUsageTrafficTimeseries extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Get traffic usage analytics - time series";
17
+ static examples = [
18
+ "<%= config.bin %> analytics usage traffic timeseries --date-expression thisweek",
19
+ "<%= config.bin %> analytics usage traffic timeseries --date-start 2024-01-01 --date-end 2024-01-31",
20
+ "<%= config.bin %> analytics usage traffic timeseries --json"
21
+ ];
22
+ static enableJsonFlag = true;
23
+ static agentMetadata = {
24
+ api_endpoint: "GET /analytics/data/usage/traffic/timeseries",
25
+ auth_scope: "read",
26
+ output_shape: {
27
+ type: "table",
28
+ columns: [
29
+ "Date",
30
+ "Traffic Type",
31
+ "Plays",
32
+ "Engagement"
33
+ ]
34
+ },
35
+ side_effects: "none"
36
+ };
37
+ static flags = {
38
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
39
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
40
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
41
+ };
42
+ async run() {
43
+ const { flags } = await this.parse(AnalyticsUsageTrafficTimeseries);
44
+ this.printWorkspaceHeader();
45
+ const { data, error } = await this.apiClient.GET("/analytics/data/usage/traffic/timeseries", { params: { query: {
46
+ date_start: flags["date-start"],
47
+ date_end: flags["date-end"],
48
+ date_expression: flags["date-expression"],
49
+ selection: flags.selection,
50
+ groupby: flags.groupby,
51
+ orderby: flags.orderby,
52
+ order: flags.order
53
+ } } });
54
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
55
+ const resp = data;
56
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
57
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
58
+ ok: true,
59
+ data: rows,
60
+ summary: `${rows.length} row(s)`,
61
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
62
+ });
63
+ if (rows.length === 0) {
64
+ this.log("No data found.");
65
+ return;
66
+ }
67
+ const table = require_lib_output.renderTable([
68
+ "Date",
69
+ "Traffic Type",
70
+ "Plays",
71
+ "Engagement"
72
+ ], rows.map((row) => [
73
+ String(row.date ?? ""),
74
+ String(row.traffic_type ?? row.type ?? ""),
75
+ String(row.plays ?? ""),
76
+ String(row.engagement ?? "")
77
+ ]));
78
+ this.log(table.toString());
79
+ this.log(chalk.default.dim(`${rows.length} row(s)`));
80
+ }
81
+ };
82
+ //#endregion
83
+ module.exports = AnalyticsUsageTrafficTimeseries;
@@ -0,0 +1,86 @@
1
+ const require_runtime = require("../../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../../lib/term-map.cjs");
3
+ const require_lib_analytics_flags = require("../../../../lib/analytics-flags.cjs");
4
+ const require_lib_base_command = require("../../../../lib/base-command.cjs");
5
+ const require_lib_output = require("../../../../lib/output.cjs");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/analytics/usage/traffic/totals.ts
9
+ /**
10
+ * Analytics usage traffic totals command — returns aggregated traffic usage analytics.
11
+ *
12
+ * Uses GET /analytics/data/usage/traffic/totals.
13
+ * No pagination — the totals endpoint does not support p/size.
14
+ */
15
+ var AnalyticsUsageTrafficTotals = class AnalyticsUsageTrafficTotals extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Get aggregated traffic usage analytics - totals";
17
+ static examples = [
18
+ "<%= config.bin %> analytics usage traffic totals --date-expression thismonth",
19
+ "<%= config.bin %> analytics usage traffic totals --date-start 2024-01-01 --date-end 2024-01-31",
20
+ "<%= config.bin %> analytics usage traffic totals --json"
21
+ ];
22
+ static enableJsonFlag = true;
23
+ static agentMetadata = {
24
+ api_endpoint: "GET /analytics/data/usage/traffic/totals",
25
+ auth_scope: "read",
26
+ output_shape: {
27
+ type: "table",
28
+ columns: [
29
+ "Traffic Type",
30
+ "Plays",
31
+ "Engagement",
32
+ "Traffic",
33
+ "Impressions"
34
+ ]
35
+ },
36
+ side_effects: "none"
37
+ };
38
+ static flags = {
39
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
40
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
41
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
42
+ };
43
+ async run() {
44
+ const { flags } = await this.parse(AnalyticsUsageTrafficTotals);
45
+ this.printWorkspaceHeader();
46
+ const { data, error } = await this.apiClient.GET("/analytics/data/usage/traffic/totals", { params: { query: {
47
+ date_start: flags["date-start"],
48
+ date_end: flags["date-end"],
49
+ date_expression: flags["date-expression"],
50
+ selection: flags.selection,
51
+ groupby: flags.groupby,
52
+ orderby: flags.orderby,
53
+ order: flags.order
54
+ } } });
55
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
56
+ const resp = data;
57
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
58
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
59
+ ok: true,
60
+ data: rows,
61
+ summary: `${rows.length} row(s)`,
62
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
63
+ });
64
+ if (rows.length === 0) {
65
+ this.log("No data found.");
66
+ return;
67
+ }
68
+ const table = require_lib_output.renderTable([
69
+ "Traffic Type",
70
+ "Plays",
71
+ "Engagement",
72
+ "Traffic",
73
+ "Impressions"
74
+ ], rows.map((row) => [
75
+ String(row.traffic_type ?? row.type ?? ""),
76
+ String(row.plays ?? ""),
77
+ String(row.engagement ?? ""),
78
+ String(row.traffic ?? ""),
79
+ String(row.impressions ?? "")
80
+ ]));
81
+ this.log(table.toString());
82
+ this.log(chalk.default.dim(`${rows.length} row(s)`));
83
+ }
84
+ };
85
+ //#endregion
86
+ module.exports = AnalyticsUsageTrafficTotals;
@@ -0,0 +1,89 @@
1
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../lib/term-map.cjs");
3
+ const require_lib_analytics_flags = require("../../../lib/analytics-flags.cjs");
4
+ const require_lib_base_command = require("../../../lib/base-command.cjs");
5
+ const require_lib_output = require("../../../lib/output.cjs");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/analytics/usage/traffic.ts
9
+ /**
10
+ * Analytics usage traffic command — returns usage analytics broken down by traffic type.
11
+ *
12
+ * Uses GET /analytics/data/usage/traffic.
13
+ * Supports pagination via p/size query params.
14
+ */
15
+ var AnalyticsUsageTraffic = class AnalyticsUsageTraffic extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Get usage analytics by traffic type";
17
+ static examples = [
18
+ "<%= config.bin %> analytics usage traffic --date-expression thismonth",
19
+ "<%= config.bin %> analytics usage traffic --date-start 2024-01-01 --date-end 2024-01-31 --page 1 --size 20",
20
+ "<%= config.bin %> analytics usage traffic --json"
21
+ ];
22
+ static enableJsonFlag = true;
23
+ static agentMetadata = {
24
+ api_endpoint: "GET /analytics/data/usage/traffic",
25
+ auth_scope: "read",
26
+ output_shape: {
27
+ type: "table",
28
+ columns: [
29
+ "Traffic Type",
30
+ "Plays",
31
+ "Engagement",
32
+ "Traffic",
33
+ "Impressions"
34
+ ]
35
+ },
36
+ side_effects: "none"
37
+ };
38
+ static flags = {
39
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
40
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
41
+ ...require_lib_analytics_flags.ANALYTICS_PAGINATION_FLAGS,
42
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
43
+ };
44
+ async run() {
45
+ const { flags } = await this.parse(AnalyticsUsageTraffic);
46
+ this.printWorkspaceHeader();
47
+ const { data, error } = await this.apiClient.GET("/analytics/data/usage/traffic", { params: { query: {
48
+ date_start: flags["date-start"],
49
+ date_end: flags["date-end"],
50
+ date_expression: flags["date-expression"],
51
+ selection: flags.selection,
52
+ groupby: flags.groupby,
53
+ orderby: flags.orderby,
54
+ order: flags.order,
55
+ p: flags.page,
56
+ size: flags.size
57
+ } } });
58
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
59
+ const resp = data;
60
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
61
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
62
+ ok: true,
63
+ data: rows,
64
+ summary: `${rows.length} row(s)`,
65
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
66
+ });
67
+ if (rows.length === 0) {
68
+ this.log("No data found.");
69
+ return;
70
+ }
71
+ const table = require_lib_output.renderTable([
72
+ "Traffic Type",
73
+ "Plays",
74
+ "Engagement",
75
+ "Traffic",
76
+ "Impressions"
77
+ ], rows.map((row) => [
78
+ String(row.traffic_type ?? row.type ?? ""),
79
+ String(row.plays ?? ""),
80
+ String(row.engagement ?? ""),
81
+ String(row.traffic ?? ""),
82
+ String(row.impressions ?? "")
83
+ ]));
84
+ this.log(table.toString());
85
+ this.log(chalk.default.dim(`${rows.length} row(s)`));
86
+ }
87
+ };
88
+ //#endregion
89
+ module.exports = AnalyticsUsageTraffic;
@@ -0,0 +1,89 @@
1
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../lib/term-map.cjs");
3
+ const require_lib_analytics_flags = require("../../../lib/analytics-flags.cjs");
4
+ const require_lib_base_command = require("../../../lib/base-command.cjs");
5
+ const require_lib_output = require("../../../lib/output.cjs");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/analytics/video/index.ts
9
+ /**
10
+ * Analytics video index command — returns paginated video analytics data.
11
+ *
12
+ * Uses GET /analytics/data/videos (root endpoint with p/size pagination).
13
+ * Closes ANL-01 gap: provides the bare `analytics video` command.
14
+ */
15
+ var AnalyticsVideoIndex = class AnalyticsVideoIndex extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Get video analytics data";
17
+ static examples = [
18
+ "<%= config.bin %> analytics video --date-expression thisweek",
19
+ "<%= config.bin %> analytics video --date-start 2024-01-01 --date-end 2024-01-31 --page 1 --size 20",
20
+ "<%= config.bin %> analytics video --json"
21
+ ];
22
+ static enableJsonFlag = true;
23
+ static agentMetadata = {
24
+ api_endpoint: "GET /analytics/data/videos",
25
+ auth_scope: "read",
26
+ output_shape: {
27
+ type: "table",
28
+ columns: [
29
+ "Plays",
30
+ "Engagement",
31
+ "Playrate",
32
+ "Avg View Time",
33
+ "Traffic"
34
+ ]
35
+ },
36
+ side_effects: "none"
37
+ };
38
+ static flags = {
39
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
40
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
41
+ ...require_lib_analytics_flags.ANALYTICS_PAGINATION_FLAGS,
42
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
43
+ };
44
+ async run() {
45
+ const { flags } = await this.parse(AnalyticsVideoIndex);
46
+ this.printWorkspaceHeader();
47
+ const { data, error } = await this.apiClient.GET("/analytics/data/videos", { params: { query: {
48
+ date_start: flags["date-start"],
49
+ date_end: flags["date-end"],
50
+ date_expression: flags["date-expression"],
51
+ selection: flags.selection,
52
+ groupby: flags.groupby,
53
+ orderby: flags.orderby,
54
+ order: flags.order,
55
+ p: flags.page,
56
+ size: flags.size
57
+ } } });
58
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
59
+ const resp = data;
60
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
61
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
62
+ ok: true,
63
+ data: rows,
64
+ summary: `${rows.length} row(s)`,
65
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
66
+ });
67
+ if (rows.length === 0) {
68
+ this.log("No data found.");
69
+ return;
70
+ }
71
+ const table = require_lib_output.renderTable([
72
+ "Plays",
73
+ "Engagement",
74
+ "Playrate",
75
+ "Avg View Time",
76
+ "Traffic"
77
+ ], rows.map((row) => [
78
+ String(row.plays ?? ""),
79
+ String(row.engagement ?? ""),
80
+ String(row.playrate ?? ""),
81
+ String(row.avg_viewtime ?? ""),
82
+ String(row.traffic ?? "")
83
+ ]));
84
+ this.log(table.toString());
85
+ this.log(chalk.default.dim(`${rows.length} row(s)`));
86
+ }
87
+ };
88
+ //#endregion
89
+ module.exports = AnalyticsVideoIndex;
@@ -0,0 +1,83 @@
1
+ const require_runtime = require("../../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../../lib/term-map.cjs");
3
+ const require_lib_analytics_flags = require("../../../../lib/analytics-flags.cjs");
4
+ const require_lib_base_command = require("../../../../lib/base-command.cjs");
5
+ const require_lib_output = require("../../../../lib/output.cjs");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/analytics/video/performance/timeseries.ts
9
+ /**
10
+ * Analytics video performance timeseries command — returns video playthrough performance time series data.
11
+ *
12
+ * Uses GET /analytics/data/videos/performance/timeseries (plural 'videos' per OpenAPI spec).
13
+ * No pagination — the timeseries endpoint does not support p/size.
14
+ */
15
+ var AnalyticsVideoPerformanceTimeseries = class AnalyticsVideoPerformanceTimeseries extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Get video playthrough performance - time series";
17
+ static examples = [
18
+ "<%= config.bin %> analytics video performance timeseries --date-expression thisweek",
19
+ "<%= config.bin %> analytics video performance timeseries --date-start 2024-01-01 --date-end 2024-01-31",
20
+ "<%= config.bin %> analytics video performance timeseries --json"
21
+ ];
22
+ static enableJsonFlag = true;
23
+ static agentMetadata = {
24
+ api_endpoint: "GET /analytics/data/videos/performance/timeseries",
25
+ auth_scope: "read",
26
+ output_shape: {
27
+ type: "table",
28
+ columns: [
29
+ "Date",
30
+ "Plays",
31
+ "Engagement",
32
+ "Playthrough"
33
+ ]
34
+ },
35
+ side_effects: "none"
36
+ };
37
+ static flags = {
38
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
39
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
40
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
41
+ };
42
+ async run() {
43
+ const { flags } = await this.parse(AnalyticsVideoPerformanceTimeseries);
44
+ this.printWorkspaceHeader();
45
+ const { data, error } = await this.apiClient.GET("/analytics/data/videos/performance/timeseries", { params: { query: {
46
+ date_start: flags["date-start"],
47
+ date_end: flags["date-end"],
48
+ date_expression: flags["date-expression"],
49
+ selection: flags.selection,
50
+ groupby: flags.groupby,
51
+ orderby: flags.orderby,
52
+ order: flags.order
53
+ } } });
54
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
55
+ const resp = data;
56
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
57
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
58
+ ok: true,
59
+ data: rows,
60
+ summary: `${rows.length} row(s)`,
61
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
62
+ });
63
+ if (rows.length === 0) {
64
+ this.log("No data found.");
65
+ return;
66
+ }
67
+ const table = require_lib_output.renderTable([
68
+ "Date",
69
+ "Plays",
70
+ "Engagement",
71
+ "Playthrough"
72
+ ], rows.map((row) => [
73
+ String(row.date ?? ""),
74
+ String(row.plays ?? ""),
75
+ String(row.engagement ?? ""),
76
+ String(row.playthrough ?? "")
77
+ ]));
78
+ this.log(table.toString());
79
+ this.log(chalk.default.dim(`${rows.length} row(s)`));
80
+ }
81
+ };
82
+ //#endregion
83
+ module.exports = AnalyticsVideoPerformanceTimeseries;
@@ -0,0 +1,80 @@
1
+ const require_runtime = require("../../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_lib_term_map = require("../../../../lib/term-map.cjs");
3
+ const require_lib_analytics_flags = require("../../../../lib/analytics-flags.cjs");
4
+ const require_lib_base_command = require("../../../../lib/base-command.cjs");
5
+ const require_lib_output = require("../../../../lib/output.cjs");
6
+ let chalk = require("chalk");
7
+ chalk = require_runtime.__toESM(chalk);
8
+ //#region src/commands/analytics/video/performance/totals.ts
9
+ /**
10
+ * Analytics video performance totals command — returns aggregated video playthrough performance totals.
11
+ *
12
+ * Uses GET /analytics/data/videos/performance/totals (plural 'videos' per OpenAPI spec).
13
+ * No pagination — the totals endpoint does not support p/size.
14
+ */
15
+ var AnalyticsVideoPerformanceTotals = class AnalyticsVideoPerformanceTotals extends require_lib_base_command.AuthenticatedCommand {
16
+ static description = "Get aggregated video playthrough performance - totals";
17
+ static examples = [
18
+ "<%= config.bin %> analytics video performance totals --date-expression thisweek",
19
+ "<%= config.bin %> analytics video performance totals --date-start 2024-01-01 --date-end 2024-01-31",
20
+ "<%= config.bin %> analytics video performance totals --json"
21
+ ];
22
+ static enableJsonFlag = true;
23
+ static agentMetadata = {
24
+ api_endpoint: "GET /analytics/data/videos/performance/totals",
25
+ auth_scope: "read",
26
+ output_shape: {
27
+ type: "table",
28
+ columns: [
29
+ "Plays",
30
+ "Engagement",
31
+ "Playthrough"
32
+ ]
33
+ },
34
+ side_effects: "none"
35
+ };
36
+ static flags = {
37
+ ...require_lib_base_command.AuthenticatedCommand.baseFlags,
38
+ ...require_lib_analytics_flags.ANALYTICS_DATE_FLAGS,
39
+ ...require_lib_analytics_flags.ANALYTICS_FILTER_FLAGS
40
+ };
41
+ async run() {
42
+ const { flags } = await this.parse(AnalyticsVideoPerformanceTotals);
43
+ this.printWorkspaceHeader();
44
+ const { data, error } = await this.apiClient.GET("/analytics/data/videos/performance/totals", { params: { query: {
45
+ date_start: flags["date-start"],
46
+ date_end: flags["date-end"],
47
+ date_expression: flags["date-expression"],
48
+ selection: flags.selection,
49
+ groupby: flags.groupby,
50
+ orderby: flags.orderby,
51
+ order: flags.order
52
+ } } });
53
+ if (error) this.error(require_lib_term_map.applyCliTerms(formatApiError(error)), { exit: 1 });
54
+ const resp = data;
55
+ const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
56
+ if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
57
+ ok: true,
58
+ data: rows,
59
+ summary: `${rows.length} row(s)`,
60
+ breadcrumbs: [{ domain: this.activeWorkspace.domain }, { resource: "analytics" }]
61
+ });
62
+ if (rows.length === 0) {
63
+ this.log("No data found.");
64
+ return;
65
+ }
66
+ const table = require_lib_output.renderTable([
67
+ "Plays",
68
+ "Engagement",
69
+ "Playthrough"
70
+ ], rows.map((row) => [
71
+ String(row.plays ?? ""),
72
+ String(row.engagement ?? ""),
73
+ String(row.playthrough ?? "")
74
+ ]));
75
+ this.log(table.toString());
76
+ this.log(chalk.default.dim(`${rows.length} row(s)`));
77
+ }
78
+ };
79
+ //#endregion
80
+ module.exports = AnalyticsVideoPerformanceTotals;