polyv-live-cli 1.2.29 → 1.2.31-rc.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 (284) hide show
  1. package/README.md +81 -422
  2. package/dist/commands/account.commands.d.ts.map +1 -1
  3. package/dist/commands/account.commands.js +298 -0
  4. package/dist/commands/account.commands.js.map +1 -1
  5. package/dist/commands/ai.commands.d.ts +4 -1
  6. package/dist/commands/ai.commands.d.ts.map +1 -1
  7. package/dist/commands/ai.commands.js +245 -6
  8. package/dist/commands/ai.commands.js.map +1 -1
  9. package/dist/commands/card-push.commands.d.ts +1 -0
  10. package/dist/commands/card-push.commands.d.ts.map +1 -1
  11. package/dist/commands/card-push.commands.js +66 -0
  12. package/dist/commands/card-push.commands.js.map +1 -1
  13. package/dist/commands/channel.commands.d.ts +6 -1
  14. package/dist/commands/channel.commands.d.ts.map +1 -1
  15. package/dist/commands/channel.commands.js +752 -0
  16. package/dist/commands/channel.commands.js.map +1 -1
  17. package/dist/commands/chat.commands.d.ts +10 -0
  18. package/dist/commands/chat.commands.d.ts.map +1 -1
  19. package/dist/commands/chat.commands.js +397 -0
  20. package/dist/commands/chat.commands.js.map +1 -1
  21. package/dist/commands/checkin.commands.d.ts.map +1 -1
  22. package/dist/commands/checkin.commands.js +34 -0
  23. package/dist/commands/checkin.commands.js.map +1 -1
  24. package/dist/commands/coupon.commands.d.ts +2 -0
  25. package/dist/commands/coupon.commands.d.ts.map +1 -1
  26. package/dist/commands/coupon.commands.js +140 -0
  27. package/dist/commands/coupon.commands.js.map +1 -1
  28. package/dist/commands/document.commands.d.ts.map +1 -1
  29. package/dist/commands/document.commands.js +79 -0
  30. package/dist/commands/document.commands.js.map +1 -1
  31. package/dist/commands/donate.commands.d.ts.map +1 -1
  32. package/dist/commands/donate.commands.js +50 -10
  33. package/dist/commands/donate.commands.js.map +1 -1
  34. package/dist/commands/index.d.ts +5 -0
  35. package/dist/commands/index.d.ts.map +1 -1
  36. package/dist/commands/index.js +11 -1
  37. package/dist/commands/index.js.map +1 -1
  38. package/dist/commands/lottery.commands.d.ts +3 -0
  39. package/dist/commands/lottery.commands.d.ts.map +1 -1
  40. package/dist/commands/lottery.commands.js +385 -22
  41. package/dist/commands/lottery.commands.js.map +1 -1
  42. package/dist/commands/monitor.commands.d.ts.map +1 -1
  43. package/dist/commands/monitor.commands.js +54 -0
  44. package/dist/commands/monitor.commands.js.map +1 -1
  45. package/dist/commands/platform.commands.d.ts.map +1 -1
  46. package/dist/commands/platform.commands.js +377 -0
  47. package/dist/commands/platform.commands.js.map +1 -1
  48. package/dist/commands/playback.commands.d.ts.map +1 -1
  49. package/dist/commands/playback.commands.js +115 -0
  50. package/dist/commands/playback.commands.js.map +1 -1
  51. package/dist/commands/player.commands.d.ts.map +1 -1
  52. package/dist/commands/player.commands.js +202 -0
  53. package/dist/commands/player.commands.js.map +1 -1
  54. package/dist/commands/product.commands.d.ts +3 -0
  55. package/dist/commands/product.commands.d.ts.map +1 -1
  56. package/dist/commands/product.commands.js +388 -0
  57. package/dist/commands/product.commands.js.map +1 -1
  58. package/dist/commands/promotion.commands.d.ts.map +1 -1
  59. package/dist/commands/promotion.commands.js +2 -0
  60. package/dist/commands/promotion.commands.js.map +1 -1
  61. package/dist/commands/qa.commands.d.ts +2 -0
  62. package/dist/commands/qa.commands.d.ts.map +1 -1
  63. package/dist/commands/qa.commands.js +164 -0
  64. package/dist/commands/qa.commands.js.map +1 -1
  65. package/dist/commands/questionnaire.commands.d.ts +2 -0
  66. package/dist/commands/questionnaire.commands.d.ts.map +1 -1
  67. package/dist/commands/questionnaire.commands.js +115 -0
  68. package/dist/commands/questionnaire.commands.js.map +1 -1
  69. package/dist/commands/record.commands.d.ts.map +1 -1
  70. package/dist/commands/record.commands.js +154 -0
  71. package/dist/commands/record.commands.js.map +1 -1
  72. package/dist/commands/session.commands.d.ts.map +1 -1
  73. package/dist/commands/session.commands.js +95 -0
  74. package/dist/commands/session.commands.js.map +1 -1
  75. package/dist/commands/statistics.commands.d.ts.map +1 -1
  76. package/dist/commands/statistics.commands.js +200 -0
  77. package/dist/commands/statistics.commands.js.map +1 -1
  78. package/dist/commands/stream.commands.d.ts.map +1 -1
  79. package/dist/commands/stream.commands.js +115 -0
  80. package/dist/commands/stream.commands.js.map +1 -1
  81. package/dist/commands/transmit.commands.d.ts +1 -0
  82. package/dist/commands/transmit.commands.d.ts.map +1 -1
  83. package/dist/commands/transmit.commands.js +33 -0
  84. package/dist/commands/transmit.commands.js.map +1 -1
  85. package/dist/commands/viewer.commands.d.ts.map +1 -1
  86. package/dist/commands/viewer.commands.js +274 -0
  87. package/dist/commands/viewer.commands.js.map +1 -1
  88. package/dist/handlers/card-push.handler.d.ts +5 -2
  89. package/dist/handlers/card-push.handler.d.ts.map +1 -1
  90. package/dist/handlers/card-push.handler.js +34 -0
  91. package/dist/handlers/card-push.handler.js.map +1 -1
  92. package/dist/handlers/channel.handler.d.ts +50 -0
  93. package/dist/handlers/channel.handler.d.ts.map +1 -1
  94. package/dist/handlers/channel.handler.js +421 -0
  95. package/dist/handlers/channel.handler.js.map +1 -1
  96. package/dist/handlers/chat.handler.d.ts +238 -1
  97. package/dist/handlers/chat.handler.d.ts.map +1 -1
  98. package/dist/handlers/chat.handler.js +379 -0
  99. package/dist/handlers/chat.handler.js.map +1 -1
  100. package/dist/handlers/checkin.handler.d.ts +4 -1
  101. package/dist/handlers/checkin.handler.d.ts.map +1 -1
  102. package/dist/handlers/checkin.handler.js +41 -0
  103. package/dist/handlers/checkin.handler.js.map +1 -1
  104. package/dist/handlers/coupon.handler.d.ts +27 -0
  105. package/dist/handlers/coupon.handler.d.ts.map +1 -1
  106. package/dist/handlers/coupon.handler.js +117 -0
  107. package/dist/handlers/coupon.handler.js.map +1 -1
  108. package/dist/handlers/document.handler.d.ts +17 -0
  109. package/dist/handlers/document.handler.d.ts.map +1 -1
  110. package/dist/handlers/document.handler.js +67 -0
  111. package/dist/handlers/document.handler.js.map +1 -1
  112. package/dist/handlers/donate.handler.d.ts +4 -1
  113. package/dist/handlers/donate.handler.d.ts.map +1 -1
  114. package/dist/handlers/donate.handler.js +49 -6
  115. package/dist/handlers/donate.handler.js.map +1 -1
  116. package/dist/handlers/lottery.handler.d.ts +29 -3
  117. package/dist/handlers/lottery.handler.d.ts.map +1 -1
  118. package/dist/handlers/lottery.handler.js +341 -69
  119. package/dist/handlers/lottery.handler.js.map +1 -1
  120. package/dist/handlers/platform.handler.d.ts +19 -2
  121. package/dist/handlers/platform.handler.d.ts.map +1 -1
  122. package/dist/handlers/platform.handler.js +187 -12
  123. package/dist/handlers/platform.handler.js.map +1 -1
  124. package/dist/handlers/playback.handler.d.ts +20 -0
  125. package/dist/handlers/playback.handler.d.ts.map +1 -1
  126. package/dist/handlers/playback.handler.js +91 -0
  127. package/dist/handlers/playback.handler.js.map +1 -1
  128. package/dist/handlers/player.handler.d.ts +22 -0
  129. package/dist/handlers/player.handler.d.ts.map +1 -1
  130. package/dist/handlers/player.handler.js +61 -0
  131. package/dist/handlers/player.handler.js.map +1 -1
  132. package/dist/handlers/product.handler.d.ts +141 -1
  133. package/dist/handlers/product.handler.d.ts.map +1 -1
  134. package/dist/handlers/product.handler.js +288 -0
  135. package/dist/handlers/product.handler.js.map +1 -1
  136. package/dist/handlers/promotion.handler.d.ts.map +1 -1
  137. package/dist/handlers/promotion.handler.js +2 -0
  138. package/dist/handlers/promotion.handler.js.map +1 -1
  139. package/dist/handlers/qa-questionnaire.handler.d.ts +15 -1
  140. package/dist/handlers/qa-questionnaire.handler.d.ts.map +1 -1
  141. package/dist/handlers/qa-questionnaire.handler.js +179 -0
  142. package/dist/handlers/qa-questionnaire.handler.js.map +1 -1
  143. package/dist/handlers/record.handler.d.ts +32 -0
  144. package/dist/handlers/record.handler.d.ts.map +1 -1
  145. package/dist/handlers/record.handler.js +146 -0
  146. package/dist/handlers/record.handler.js.map +1 -1
  147. package/dist/handlers/session.handler.d.ts +20 -0
  148. package/dist/handlers/session.handler.d.ts.map +1 -1
  149. package/dist/handlers/session.handler.js +68 -0
  150. package/dist/handlers/session.handler.js.map +1 -1
  151. package/dist/handlers/statistics.handler.d.ts +4 -0
  152. package/dist/handlers/statistics.handler.d.ts.map +1 -1
  153. package/dist/handlers/statistics.handler.js +11 -0
  154. package/dist/handlers/statistics.handler.js.map +1 -1
  155. package/dist/handlers/stream.handler.d.ts +73 -1
  156. package/dist/handlers/stream.handler.d.ts.map +1 -1
  157. package/dist/handlers/stream.handler.js +120 -0
  158. package/dist/handlers/stream.handler.js.map +1 -1
  159. package/dist/handlers/transmit.handler.d.ts +8 -1
  160. package/dist/handlers/transmit.handler.d.ts.map +1 -1
  161. package/dist/handlers/transmit.handler.js +26 -0
  162. package/dist/handlers/transmit.handler.js.map +1 -1
  163. package/dist/handlers/viewer.handler.d.ts +29 -1
  164. package/dist/handlers/viewer.handler.d.ts.map +1 -1
  165. package/dist/handlers/viewer.handler.js +399 -8
  166. package/dist/handlers/viewer.handler.js.map +1 -1
  167. package/dist/index.d.ts.map +1 -1
  168. package/dist/index.js +114 -19
  169. package/dist/index.js.map +1 -1
  170. package/dist/services/ai-digital-human-service.d.ts +2 -0
  171. package/dist/services/ai-digital-human-service.d.ts.map +1 -1
  172. package/dist/services/ai-digital-human-service.js +14 -15
  173. package/dist/services/ai-digital-human-service.js.map +1 -1
  174. package/dist/services/card-push-service.d.ts +6 -1
  175. package/dist/services/card-push-service.d.ts.map +1 -1
  176. package/dist/services/card-push-service.js +51 -18
  177. package/dist/services/card-push-service.js.map +1 -1
  178. package/dist/services/channel.service.sdk.d.ts +73 -0
  179. package/dist/services/channel.service.sdk.d.ts.map +1 -1
  180. package/dist/services/channel.service.sdk.js +508 -0
  181. package/dist/services/channel.service.sdk.js.map +1 -1
  182. package/dist/services/chat.service.sdk.d.ts +170 -0
  183. package/dist/services/chat.service.sdk.d.ts.map +1 -1
  184. package/dist/services/chat.service.sdk.js +256 -0
  185. package/dist/services/chat.service.sdk.js.map +1 -1
  186. package/dist/services/checkin-service.d.ts +2 -1
  187. package/dist/services/checkin-service.d.ts.map +1 -1
  188. package/dist/services/checkin-service.js +12 -0
  189. package/dist/services/checkin-service.js.map +1 -1
  190. package/dist/services/document.service.sdk.d.ts +13 -0
  191. package/dist/services/document.service.sdk.d.ts.map +1 -1
  192. package/dist/services/document.service.sdk.js +28 -0
  193. package/dist/services/document.service.sdk.js.map +1 -1
  194. package/dist/services/donate-service.d.ts +4 -1
  195. package/dist/services/donate-service.d.ts.map +1 -1
  196. package/dist/services/donate-service.js +69 -9
  197. package/dist/services/donate-service.js.map +1 -1
  198. package/dist/services/lottery-service.d.ts +25 -1
  199. package/dist/services/lottery-service.d.ts.map +1 -1
  200. package/dist/services/lottery-service.js +324 -6
  201. package/dist/services/lottery-service.js.map +1 -1
  202. package/dist/services/platform-label-service.d.ts +1 -0
  203. package/dist/services/platform-label-service.d.ts.map +1 -1
  204. package/dist/services/platform-label-service.js +20 -6
  205. package/dist/services/platform-label-service.js.map +1 -1
  206. package/dist/services/platform-service.d.ts +12 -1
  207. package/dist/services/platform-service.d.ts.map +1 -1
  208. package/dist/services/platform-service.js +46 -2
  209. package/dist/services/platform-service.js.map +1 -1
  210. package/dist/services/playback.service.sdk.d.ts +27 -0
  211. package/dist/services/playback.service.sdk.d.ts.map +1 -1
  212. package/dist/services/playback.service.sdk.js +38 -2
  213. package/dist/services/playback.service.sdk.js.map +1 -1
  214. package/dist/services/player.service.sdk.d.ts +12 -0
  215. package/dist/services/player.service.sdk.d.ts.map +1 -1
  216. package/dist/services/player.service.sdk.js +36 -0
  217. package/dist/services/player.service.sdk.js.map +1 -1
  218. package/dist/services/product.service.sdk.d.ts +78 -1
  219. package/dist/services/product.service.sdk.d.ts.map +1 -1
  220. package/dist/services/product.service.sdk.js +470 -0
  221. package/dist/services/product.service.sdk.js.map +1 -1
  222. package/dist/services/promotion-service.d.ts +2 -0
  223. package/dist/services/promotion-service.d.ts.map +1 -1
  224. package/dist/services/promotion-service.js +34 -21
  225. package/dist/services/promotion-service.js.map +1 -1
  226. package/dist/services/qa-questionnaire-service.d.ts +12 -1
  227. package/dist/services/qa-questionnaire-service.d.ts.map +1 -1
  228. package/dist/services/qa-questionnaire-service.js +158 -9
  229. package/dist/services/qa-questionnaire-service.js.map +1 -1
  230. package/dist/services/record.service.sdk.d.ts +67 -0
  231. package/dist/services/record.service.sdk.d.ts.map +1 -1
  232. package/dist/services/record.service.sdk.js +60 -3
  233. package/dist/services/record.service.sdk.js.map +1 -1
  234. package/dist/services/session.service.sdk.d.ts +34 -0
  235. package/dist/services/session.service.sdk.d.ts.map +1 -1
  236. package/dist/services/session.service.sdk.js +36 -0
  237. package/dist/services/session.service.sdk.js.map +1 -1
  238. package/dist/services/statistics.service.sdk.d.ts +21 -0
  239. package/dist/services/statistics.service.sdk.d.ts.map +1 -1
  240. package/dist/services/statistics.service.sdk.js +99 -0
  241. package/dist/services/statistics.service.sdk.js.map +1 -1
  242. package/dist/services/stream.service.sdk.d.ts +19 -0
  243. package/dist/services/stream.service.sdk.d.ts.map +1 -1
  244. package/dist/services/stream.service.sdk.js +109 -0
  245. package/dist/services/stream.service.sdk.js.map +1 -1
  246. package/dist/services/transmit-service.d.ts +7 -0
  247. package/dist/services/transmit-service.d.ts.map +1 -1
  248. package/dist/services/transmit-service.js +28 -14
  249. package/dist/services/transmit-service.js.map +1 -1
  250. package/dist/services/viewer-service.d.ts +15 -1
  251. package/dist/services/viewer-service.d.ts.map +1 -1
  252. package/dist/services/viewer-service.js +118 -0
  253. package/dist/services/viewer-service.js.map +1 -1
  254. package/dist/setup/resource-handlers.js +2 -3
  255. package/dist/setup/resource-handlers.js.map +1 -1
  256. package/dist/types/auth-source.types.d.ts +2 -2
  257. package/dist/types/auth-source.types.js +2 -2
  258. package/dist/types/auth-source.types.js.map +1 -1
  259. package/dist/types/card-push.d.ts +15 -0
  260. package/dist/types/card-push.d.ts.map +1 -1
  261. package/dist/types/chat.d.ts +12 -0
  262. package/dist/types/chat.d.ts.map +1 -1
  263. package/dist/types/checkin.d.ts +9 -0
  264. package/dist/types/checkin.d.ts.map +1 -1
  265. package/dist/types/donate.d.ts +39 -2
  266. package/dist/types/donate.d.ts.map +1 -1
  267. package/dist/types/interaction.d.ts +87 -0
  268. package/dist/types/interaction.d.ts.map +1 -1
  269. package/dist/types/lottery.d.ts +61 -21
  270. package/dist/types/lottery.d.ts.map +1 -1
  271. package/dist/types/platform.d.ts +69 -0
  272. package/dist/types/platform.d.ts.map +1 -1
  273. package/dist/types/product.d.ts +82 -0
  274. package/dist/types/product.d.ts.map +1 -1
  275. package/dist/types/promotion.d.ts +1 -0
  276. package/dist/types/promotion.d.ts.map +1 -1
  277. package/dist/types/qa.d.ts +111 -0
  278. package/dist/types/qa.d.ts.map +1 -1
  279. package/dist/types/record.d.ts +1 -0
  280. package/dist/types/record.d.ts.map +1 -1
  281. package/dist/types/viewer.d.ts +103 -0
  282. package/dist/types/viewer.d.ts.map +1 -1
  283. package/package.json +31 -30
  284. package/LICENSE +0 -21
@@ -4,14 +4,8 @@ exports.LotteryHandler = void 0;
4
4
  const base_handler_1 = require("./base.handler");
5
5
  const lottery_service_1 = require("../services/lottery-service");
6
6
  const errors_1 = require("../utils/errors");
7
+ const api_command_1 = require("../utils/api-command");
7
8
  const VALID_LOTTERY_CONDITIONS = ['none', 'invite', 'duration', 'comment', 'question'];
8
- const VALID_ACTIVITY_DURATION_TYPES = ['second', 'minute', 'hour'];
9
- const VALID_ACCEPT_TYPES = ['form', 'link', 'qrCode'];
10
- const DEFAULT_ACTIVITY_DURATION = '10';
11
- const DEFAULT_FORM_INFO = [
12
- { type: 'userName', field: '姓名', tips: '请输入姓名', required: true },
13
- { type: 'userPhone', field: '手机号', tips: '请输入手机号', required: true },
14
- ];
15
9
  class LotteryHandler extends base_handler_1.BaseHandler {
16
10
  constructor(authConfig, serviceConfig) {
17
11
  super();
@@ -29,37 +23,17 @@ class LotteryHandler extends base_handler_1.BaseHandler {
29
23
  };
30
24
  if (options.receiveInfo) {
31
25
  params.receiveEnabled = 'Y';
32
- params.receiveInfo = this.parseJsonArray(options.receiveInfo, 'receiveInfo');
26
+ params.receiveInfo = options.receiveInfo;
33
27
  }
34
- if (options.type !== 'none') {
35
- params.activityDuration = options.activityDuration ?? this.getDefaultActivityDuration(options);
36
- params.activityDurationType = options.activityDurationType ?? 'minute';
37
- }
38
- if (options.type !== 'none' && options.type !== 'question') {
39
- params.acceptType = options.acceptType ?? 'form';
40
- if (params.acceptType === 'form') {
41
- params.formInfo = options.formInfo
42
- ? this.parseJsonArray(options.formInfo, 'formInfo')
43
- : DEFAULT_FORM_INFO;
44
- }
45
- else if (params.acceptType === 'link' && options.prizeUrl) {
46
- params.prizeUrl = options.prizeUrl;
47
- }
48
- else if (params.acceptType === 'qrCode') {
49
- if (options.qrCode)
50
- params.qrCode = options.qrCode;
51
- if (options.qrCodeTips)
52
- params.qrCodeTips = options.qrCodeTips;
53
- }
54
- }
55
- if (options.type === 'duration') {
28
+ if (options.type === 'invite' || options.type === 'duration') {
56
29
  if (options.duration !== undefined) {
57
30
  params.duration = options.duration;
58
31
  }
32
+ if (options.type === 'invite' && options.inviteNum !== undefined) {
33
+ params.inviteNum = options.inviteNum;
34
+ }
59
35
  }
60
- if (options.type === 'invite' && options.inviteNum !== undefined) {
61
- params.inviteNum = options.inviteNum;
62
- }
36
+ await (0, api_command_1.confirmWrite)(options.force, `Create lottery activity "${options.name}" on channel ${options.channelId}?`);
63
37
  const result = await this.lotteryService.createLotteryActivity(params);
64
38
  this.displayCreateResult(result, options);
65
39
  }, 'lottery.create');
@@ -99,6 +73,7 @@ class LotteryHandler extends base_handler_1.BaseHandler {
99
73
  params.amount = options.amount;
100
74
  if (options.prizeName !== undefined)
101
75
  params.prizeName = options.prizeName;
76
+ await (0, api_command_1.confirmWrite)(options.force, `Update lottery activity ${options.id} on channel ${options.channelId}?`);
102
77
  const result = await this.lotteryService.updateLotteryActivity(params);
103
78
  this.displayUpdateResult(result, options);
104
79
  }, 'lottery.update');
@@ -106,6 +81,7 @@ class LotteryHandler extends base_handler_1.BaseHandler {
106
81
  async deleteLottery(options) {
107
82
  return this.executeWithErrorHandling(async () => {
108
83
  this.validateDeleteOptions(options);
84
+ await (0, api_command_1.confirmWrite)(options.force, `Delete lottery activity ${options.id} on channel ${options.channelId}?`);
109
85
  await this.lotteryService.deleteLotteryActivity({
110
86
  channelId: options.channelId,
111
87
  id: options.id,
@@ -122,6 +98,8 @@ class LotteryHandler extends base_handler_1.BaseHandler {
122
98
  channelId: options.channelId,
123
99
  lotteryId: options.lotteryId,
124
100
  };
101
+ if (options.viewerId !== undefined)
102
+ params.viewerId = options.viewerId;
125
103
  if (options.page !== undefined)
126
104
  params.page = options.page;
127
105
  if (options.limit !== undefined)
@@ -150,6 +128,174 @@ class LotteryHandler extends base_handler_1.BaseHandler {
150
128
  this.displayRecordsResult(result, options);
151
129
  }, 'lottery.records');
152
130
  }
131
+ async getChannelRecords(options) {
132
+ return this.executeWithErrorHandling(async () => {
133
+ this.validateChannelRecordsOptions(options);
134
+ const params = {
135
+ channelIds: options.channelIds,
136
+ startTime: options.startTime,
137
+ endTime: options.endTime,
138
+ };
139
+ if (options.sessionId !== undefined)
140
+ params.sessionId = options.sessionId;
141
+ if (options.page !== undefined)
142
+ params.page = options.page;
143
+ if (options.limit !== undefined)
144
+ params.limit = options.limit;
145
+ const result = await this.lotteryService.listChannelsLottery(params);
146
+ this.displayGenericResult(result, options.output);
147
+ }, 'lottery.channel-records');
148
+ }
149
+ async getLegacyRecords(options) {
150
+ return this.executeWithErrorHandling(async () => {
151
+ this.validateLegacyRecordsOptions(options);
152
+ const params = {
153
+ channelId: options.channelId,
154
+ startTime: options.startTime,
155
+ endTime: options.endTime,
156
+ };
157
+ if (options.sessionId !== undefined)
158
+ params.sessionId = options.sessionId;
159
+ if (options.page !== undefined)
160
+ params.page = options.page;
161
+ if (options.limit !== undefined)
162
+ params.limit = options.limit;
163
+ const result = await this.lotteryService.listLegacyLottery(params);
164
+ this.displayRecordsResult(result, options);
165
+ }, 'lottery.legacy-records');
166
+ }
167
+ async downloadWinners(options) {
168
+ return this.executeWithErrorHandling(async () => {
169
+ this.validateDownloadWinnersOptions(options);
170
+ const result = await this.lotteryService.downloadWinnerDetail({
171
+ channelId: options.channelId,
172
+ lotteryId: options.lotteryId,
173
+ });
174
+ this.displayGenericResult(result, options.output);
175
+ }, 'lottery.download-winners');
176
+ }
177
+ async addReceiveInfo(options) {
178
+ return this.executeWithErrorHandling(async () => {
179
+ this.validateReceiveInfoOptions(options);
180
+ await (0, api_command_1.confirmWrite)(options.force, `Add receive info for lottery winner ${options.winnerCode}?`);
181
+ const params = {
182
+ channelId: options.channelId,
183
+ lotteryId: options.lotteryId,
184
+ winnerCode: options.winnerCode,
185
+ viewerId: options.viewerId,
186
+ };
187
+ const receiveInfo = this.parseReceiveInfo(options.receiveInfo);
188
+ if (receiveInfo !== undefined)
189
+ params.receiveInfo = receiveInfo;
190
+ const result = await this.lotteryService.addReceiveInfoV4(params);
191
+ this.displayGenericResult(result ?? { success: true }, options.output, 'Receive info saved successfully');
192
+ }, 'lottery.receive-info');
193
+ }
194
+ async createWaitLottery(options) {
195
+ return this.executeWithErrorHandling(async () => {
196
+ this.validateGenericOptions('Lottery wait create', options, ['channelId', 'id', 'lotteryTime'], [], ['lotteryTime']);
197
+ await (0, api_command_1.confirmWrite)(options.force, `Create wait lottery schedule for lottery ${options.id}?`);
198
+ const result = await this.lotteryService.createConditionWaitLottery(this.toV4Params(options));
199
+ this.displayGenericResult(result ?? { success: true }, options.output, 'Wait lottery scheduled successfully');
200
+ }, 'lottery.wait.create');
201
+ }
202
+ async listViewerGroups(options) {
203
+ return this.executeWithErrorHandling(async () => {
204
+ this.validateGenericOptions('Lottery group list', options, ['channelId'], ['page', 'size']);
205
+ const result = await this.lotteryService.listLotteryViewerGroups(this.toV4Params(options));
206
+ this.displayGenericResult(result, options.output);
207
+ }, 'lottery.group.list');
208
+ }
209
+ async createViewerGroup(options) {
210
+ return this.executeWithErrorHandling(async () => {
211
+ this.validateGenericOptions('Lottery group create', options, ['channelId', 'title']);
212
+ await (0, api_command_1.confirmWrite)(options.force, `Create lottery viewer group "${options.title}"?`);
213
+ const result = await this.lotteryService.createLotteryViewerGroup(this.toV4Params(options));
214
+ this.displayGenericResult(result, options.output, 'Lottery viewer group created successfully');
215
+ }, 'lottery.group.create');
216
+ }
217
+ async updateViewerGroup(options) {
218
+ return this.executeWithErrorHandling(async () => {
219
+ this.validateGenericOptions('Lottery group update', options, ['channelId', 'id', 'title']);
220
+ await (0, api_command_1.confirmWrite)(options.force, `Update lottery viewer group ${options.id}?`);
221
+ const result = await this.lotteryService.updateLotteryViewerGroup(this.toV4Params(options));
222
+ this.displayGenericResult(result ?? { success: true }, options.output, 'Lottery viewer group updated successfully');
223
+ }, 'lottery.group.update');
224
+ }
225
+ async deleteViewerGroup(options) {
226
+ return this.executeWithErrorHandling(async () => {
227
+ this.validateGenericOptions('Lottery group delete', options, ['channelId', 'id']);
228
+ await (0, api_command_1.confirmWrite)(options.force, `Delete lottery viewer group ${options.id}?`);
229
+ const result = await this.lotteryService.deleteLotteryViewerGroup(this.toV4Params(options));
230
+ this.displayGenericResult(result ?? { success: true }, options.output, 'Lottery viewer group deleted successfully');
231
+ }, 'lottery.group.delete');
232
+ }
233
+ async listGroupViewers(options) {
234
+ return this.executeWithErrorHandling(async () => {
235
+ this.validateGenericOptions('Lottery group-viewer list', options, ['channelId', 'groupId'], ['page', 'size']);
236
+ const result = await this.lotteryService.listLotteryGroupViewers(this.toV4Params(options));
237
+ this.displayGenericResult(result, options.output);
238
+ }, 'lottery.group-viewer.list');
239
+ }
240
+ async createGroupViewers(options) {
241
+ return this.executeWithErrorHandling(async () => {
242
+ this.validateGenericOptions('Lottery group-viewer add', options, ['channelId', 'groupId']);
243
+ this.validateArrayOption('viewerIds', options.viewerIds, options);
244
+ await (0, api_command_1.confirmWrite)(options.force, `Add ${options.viewerIds.length} lottery group viewer(s)?`);
245
+ const result = await this.lotteryService.createLotteryGroupViewers(this.toV4Params(options));
246
+ this.displayGenericResult(result, options.output, 'Lottery group viewers added successfully');
247
+ }, 'lottery.group-viewer.add');
248
+ }
249
+ async createGroupViewerNames(options) {
250
+ return this.executeWithErrorHandling(async () => {
251
+ this.validateGenericOptions('Lottery group-viewer add-names', options, ['channelId', 'groupId']);
252
+ this.validateArrayOption('viewerNames', options.viewerNames, options);
253
+ await (0, api_command_1.confirmWrite)(options.force, `Add ${options.viewerNames.length} lottery group viewer name(s)?`);
254
+ const result = await this.lotteryService.createLotteryGroupViewerNames(this.toV4Params(options));
255
+ this.displayGenericResult(result, options.output, 'Lottery group viewer names added successfully');
256
+ }, 'lottery.group-viewer.add-names');
257
+ }
258
+ async deleteGroupViewers(options) {
259
+ return this.executeWithErrorHandling(async () => {
260
+ this.validateGenericOptions('Lottery group-viewer delete', options, ['channelId', 'groupId']);
261
+ this.validateArrayOption('ids', options.ids, options);
262
+ await (0, api_command_1.confirmWrite)(options.force, `Delete ${options.ids.length} lottery group viewer record(s)?`);
263
+ const result = await this.lotteryService.deleteLotteryGroupViewers(this.toV4Params(options));
264
+ this.displayGenericResult(result ?? { success: true }, options.output, 'Lottery group viewers deleted successfully');
265
+ }, 'lottery.group-viewer.delete');
266
+ }
267
+ async listBlacklistViewers(options) {
268
+ return this.executeWithErrorHandling(async () => {
269
+ this.validateGenericOptions('Lottery blacklist list', options, ['channelId'], ['page', 'size']);
270
+ const result = await this.lotteryService.listLotteryBlacklistViewers(this.toV4Params(options));
271
+ this.displayGenericResult(result, options.output);
272
+ }, 'lottery.blacklist.list');
273
+ }
274
+ async createBlacklistViewers(options) {
275
+ return this.executeWithErrorHandling(async () => {
276
+ this.validateGenericOptions('Lottery blacklist add', options, ['channelId']);
277
+ this.validateArrayOption('viewerIds', options.viewerIds, options);
278
+ await (0, api_command_1.confirmWrite)(options.force, `Add ${options.viewerIds.length} lottery blacklist viewer(s)?`);
279
+ const result = await this.lotteryService.createLotteryBlacklistViewers(this.toV4Params(options));
280
+ this.displayGenericResult(result, options.output, 'Lottery blacklist viewers added successfully');
281
+ }, 'lottery.blacklist.add');
282
+ }
283
+ async deleteBlacklistViewers(options) {
284
+ return this.executeWithErrorHandling(async () => {
285
+ this.validateGenericOptions('Lottery blacklist delete', options, ['channelId']);
286
+ this.validateArrayOption('ids', options.ids, options);
287
+ await (0, api_command_1.confirmWrite)(options.force, `Delete ${options.ids.length} lottery blacklist viewer record(s)?`);
288
+ const result = await this.lotteryService.deleteLotteryBlacklistViewers(this.toV4Params(options));
289
+ this.displayGenericResult(result ?? { success: true }, options.output, 'Lottery blacklist viewers deleted successfully');
290
+ }, 'lottery.blacklist.delete');
291
+ }
292
+ async listLuckyBagWinners(options) {
293
+ return this.executeWithErrorHandling(async () => {
294
+ this.validateGenericOptions('Lottery lucky-bag winners', options, ['activityId'], ['page', 'size']);
295
+ const result = await this.lotteryService.listLuckyBagWinners(this.toV4Params(options));
296
+ this.displayGenericResult(result, options.output);
297
+ }, 'lottery.lucky-bag.winners');
298
+ }
153
299
  validateCreateOptions(options) {
154
300
  const errors = [];
155
301
  if (!options.channelId || options.channelId.trim() === '') {
@@ -170,19 +316,6 @@ class LotteryHandler extends base_handler_1.BaseHandler {
170
316
  if (options.output && !['table', 'json'].includes(options.output)) {
171
317
  errors.push('output must be either "table" or "json"');
172
318
  }
173
- if (options.activityDurationType &&
174
- !VALID_ACTIVITY_DURATION_TYPES.includes(options.activityDurationType)) {
175
- errors.push('activityDurationType must be one of: second, minute, hour');
176
- }
177
- if (options.acceptType && !VALID_ACCEPT_TYPES.includes(options.acceptType)) {
178
- errors.push('acceptType must be one of: form, link, qrCode');
179
- }
180
- if (options.acceptType === 'link' && !options.prizeUrl) {
181
- errors.push('prizeUrl is required when acceptType is link');
182
- }
183
- if (options.acceptType === 'qrCode' && !options.qrCode) {
184
- errors.push('qrCode is required when acceptType is qrCode');
185
- }
186
319
  if (errors.length > 0) {
187
320
  throw new errors_1.PolyVValidationError(`Lottery create options validation failed: ${errors.join(', ')}`, 'options', options, 'validation_failed');
188
321
  }
@@ -262,6 +395,9 @@ class LotteryHandler extends base_handler_1.BaseHandler {
262
395
  if (!options.lotteryId || options.lotteryId.trim() === '') {
263
396
  errors.push('lotteryId is required');
264
397
  }
398
+ if (options.viewerId !== undefined && options.viewerId.trim() === '') {
399
+ errors.push('viewerId must not be empty');
400
+ }
265
401
  if (options.output && !['table', 'json'].includes(options.output)) {
266
402
  errors.push('output must be either "table" or "json"');
267
403
  }
@@ -274,6 +410,23 @@ class LotteryHandler extends base_handler_1.BaseHandler {
274
410
  if (!options.channelId || options.channelId.trim() === '') {
275
411
  errors.push('channelId is required');
276
412
  }
413
+ if (typeof options.startTime !== 'number' || !Number.isInteger(options.startTime)) {
414
+ errors.push('startTime is required');
415
+ }
416
+ if (typeof options.endTime !== 'number' || !Number.isInteger(options.endTime)) {
417
+ errors.push('endTime is required');
418
+ }
419
+ if (typeof options.startTime === 'number' &&
420
+ typeof options.endTime === 'number' &&
421
+ options.startTime > options.endTime) {
422
+ errors.push('startTime must be less than or equal to endTime');
423
+ }
424
+ if (options.page !== undefined && (!Number.isInteger(options.page) || options.page < 1)) {
425
+ errors.push('page must be a positive integer');
426
+ }
427
+ if (options.limit !== undefined && (!Number.isInteger(options.limit) || options.limit < 1)) {
428
+ errors.push('limit must be a positive integer');
429
+ }
277
430
  if (options.output && !['table', 'json'].includes(options.output)) {
278
431
  errors.push('output must be either "table" or "json"');
279
432
  }
@@ -281,6 +434,130 @@ class LotteryHandler extends base_handler_1.BaseHandler {
281
434
  throw new errors_1.PolyVValidationError(`Lottery records options validation failed: ${errors.join(', ')}`, 'options', options, 'validation_failed');
282
435
  }
283
436
  }
437
+ validateChannelRecordsOptions(options) {
438
+ const errors = [];
439
+ if (!Array.isArray(options.channelIds) || options.channelIds.length === 0) {
440
+ errors.push('channelIds is required');
441
+ }
442
+ this.validatePositiveNumber(errors, 'startTime', options.startTime);
443
+ this.validatePositiveNumber(errors, 'endTime', options.endTime);
444
+ this.validateOptionalPositiveInteger(errors, 'page', options.page);
445
+ this.validateOptionalPositiveInteger(errors, 'limit', options.limit);
446
+ if (options.output && !['table', 'json'].includes(options.output)) {
447
+ errors.push('output must be either "table" or "json"');
448
+ }
449
+ if (errors.length > 0) {
450
+ throw new errors_1.PolyVValidationError(`Lottery channel records options validation failed: ${errors.join(', ')}`, 'options', options, 'validation_failed');
451
+ }
452
+ }
453
+ validateLegacyRecordsOptions(options) {
454
+ const errors = [];
455
+ if (!options.channelId || options.channelId.trim() === '') {
456
+ errors.push('channelId is required');
457
+ }
458
+ this.validatePositiveNumber(errors, 'startTime', options.startTime);
459
+ this.validatePositiveNumber(errors, 'endTime', options.endTime);
460
+ this.validateOptionalPositiveInteger(errors, 'page', options.page);
461
+ this.validateOptionalPositiveInteger(errors, 'limit', options.limit);
462
+ if (options.output && !['table', 'json'].includes(options.output)) {
463
+ errors.push('output must be either "table" or "json"');
464
+ }
465
+ if (errors.length > 0) {
466
+ throw new errors_1.PolyVValidationError(`Lottery legacy records options validation failed: ${errors.join(', ')}`, 'options', options, 'validation_failed');
467
+ }
468
+ }
469
+ validateDownloadWinnersOptions(options) {
470
+ const errors = [];
471
+ if (!options.channelId || options.channelId.trim() === '') {
472
+ errors.push('channelId is required');
473
+ }
474
+ if (!options.lotteryId || options.lotteryId.trim() === '') {
475
+ errors.push('lotteryId is required');
476
+ }
477
+ if (options.output && !['table', 'json'].includes(options.output)) {
478
+ errors.push('output must be either "table" or "json"');
479
+ }
480
+ if (errors.length > 0) {
481
+ throw new errors_1.PolyVValidationError(`Lottery download winners options validation failed: ${errors.join(', ')}`, 'options', options, 'validation_failed');
482
+ }
483
+ }
484
+ validateReceiveInfoOptions(options) {
485
+ const errors = [];
486
+ if (!options.channelId || options.channelId.trim() === '') {
487
+ errors.push('channelId is required');
488
+ }
489
+ if (!options.lotteryId || options.lotteryId.trim() === '') {
490
+ errors.push('lotteryId is required');
491
+ }
492
+ if (!options.winnerCode || options.winnerCode.trim() === '') {
493
+ errors.push('winnerCode is required');
494
+ }
495
+ if (!options.viewerId || options.viewerId.trim() === '') {
496
+ errors.push('viewerId is required');
497
+ }
498
+ if (options.output && !['table', 'json'].includes(options.output)) {
499
+ errors.push('output must be either "table" or "json"');
500
+ }
501
+ if (errors.length > 0) {
502
+ throw new errors_1.PolyVValidationError(`Lottery receive info options validation failed: ${errors.join(', ')}`, 'options', options, 'validation_failed');
503
+ }
504
+ }
505
+ validatePositiveNumber(errors, field, value) {
506
+ if (!Number.isFinite(value) || value <= 0) {
507
+ errors.push(`${field} must be a positive number`);
508
+ }
509
+ }
510
+ validateOptionalPositiveInteger(errors, field, value) {
511
+ if (value === undefined)
512
+ return;
513
+ if (!Number.isInteger(value) || value < 1) {
514
+ errors.push(`${field} must be a positive integer`);
515
+ }
516
+ }
517
+ validateGenericOptions(label, options, requiredFields, positiveIntegerFields = [], positiveNumberFields = []) {
518
+ const errors = [];
519
+ requiredFields.forEach((field) => {
520
+ const value = options[field];
521
+ if (value === undefined || value === null || (typeof value === 'string' && value.trim() === '')) {
522
+ errors.push(`${field} is required`);
523
+ }
524
+ });
525
+ positiveIntegerFields.forEach((field) => {
526
+ const value = options[field];
527
+ if (value !== undefined && (!Number.isInteger(value) || value < 1)) {
528
+ errors.push(`${field} must be a positive integer`);
529
+ }
530
+ });
531
+ positiveNumberFields.forEach((field) => {
532
+ const value = options[field];
533
+ if (value !== undefined && (!Number.isFinite(value) || value <= 0)) {
534
+ errors.push(`${field} must be a positive number`);
535
+ }
536
+ });
537
+ if (options.output && !['table', 'json'].includes(options.output)) {
538
+ errors.push('output must be either "table" or "json"');
539
+ }
540
+ if (errors.length > 0) {
541
+ throw new errors_1.PolyVValidationError(`${label} options validation failed: ${errors.join(', ')}`, 'options', options, 'validation_failed');
542
+ }
543
+ }
544
+ validateArrayOption(field, value, options) {
545
+ if (!Array.isArray(value) || value.length === 0) {
546
+ throw new errors_1.PolyVValidationError(`${field} must be a non-empty array`, 'options', options, 'validation_failed');
547
+ }
548
+ }
549
+ toV4Params(options) {
550
+ const params = (0, api_command_1.apiParams)(options);
551
+ if (params.page !== undefined) {
552
+ params.pageNumber = params.page;
553
+ delete params.page;
554
+ }
555
+ if (params.size !== undefined) {
556
+ params.pageSize = params.size;
557
+ delete params.size;
558
+ }
559
+ return params;
560
+ }
284
561
  displayCreateResult(result, options) {
285
562
  const data = result?.data ?? result;
286
563
  const activityId = data?.id || data?.activityId || data?.lotteryActivityId || 'N/A';
@@ -371,7 +648,7 @@ class LotteryHandler extends base_handler_1.BaseHandler {
371
648
  }
372
649
  }
373
650
  displayWinnersResult(result, options) {
374
- const data = result?.data || [];
651
+ const data = result?.data?.contents || result?.data || [];
375
652
  if (!data || (Array.isArray(data) && data.length === 0)) {
376
653
  this.displayInfo(`No winners found for lottery ${options.lotteryId}`);
377
654
  return;
@@ -395,7 +672,7 @@ class LotteryHandler extends base_handler_1.BaseHandler {
395
672
  }
396
673
  }
397
674
  displayRecordsResult(result, options) {
398
- const data = result?.data || [];
675
+ const data = result?.data?.contents || result?.data || [];
399
676
  if (!data || (Array.isArray(data) && data.length === 0)) {
400
677
  this.displayInfo(`No lottery records found for channel ${options.channelId}`);
401
678
  return;
@@ -419,31 +696,26 @@ class LotteryHandler extends base_handler_1.BaseHandler {
419
696
  this.displayAsTable(tableData);
420
697
  }
421
698
  }
422
- truncate(str, maxLength) {
423
- if (!str)
424
- return '-';
425
- return str.length > maxLength ? str.substring(0, maxLength) + '...' : str;
699
+ displayGenericResult(result, format, successMessage) {
700
+ if (successMessage && format !== 'json') {
701
+ this.displaySuccess(successMessage);
702
+ }
703
+ this.displayData(result ?? { success: true }, format || 'table');
426
704
  }
427
- parseJsonArray(value, fieldName) {
428
- try {
429
- const parsed = JSON.parse(value);
430
- if (!Array.isArray(parsed)) {
431
- throw new Error(`${fieldName} must be a JSON array`);
432
- }
433
- return parsed;
705
+ parseReceiveInfo(value) {
706
+ if (value === undefined || typeof value !== 'string') {
707
+ return value;
434
708
  }
435
- catch (error) {
436
- if (error instanceof SyntaxError) {
437
- throw new errors_1.PolyVValidationError(`${fieldName} must be valid JSON`, fieldName, value, 'invalid_json');
438
- }
439
- throw error;
709
+ const parsed = JSON.parse(value);
710
+ if (!parsed || typeof parsed !== 'object') {
711
+ throw new errors_1.PolyVValidationError('receiveInfo must be a JSON object or array', 'receiveInfo', value, 'validation_failed');
440
712
  }
713
+ return parsed;
441
714
  }
442
- getDefaultActivityDuration(options) {
443
- if (options.type === 'duration' && options.duration && options.duration > 0) {
444
- return String(Math.ceil(options.duration / 60));
445
- }
446
- return DEFAULT_ACTIVITY_DURATION;
715
+ truncate(str, maxLength) {
716
+ if (!str)
717
+ return '-';
718
+ return str.length > maxLength ? str.substring(0, maxLength) + '...' : str;
447
719
  }
448
720
  }
449
721
  exports.LotteryHandler = LotteryHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"lottery.handler.js","sourceRoot":"","sources":["../../src/handlers/lottery.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lottery.handler.js","sourceRoot":"","sources":["../../src/handlers/lottery.handler.ts"],"names":[],"mappings":"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"}