polyv-live-cli 1.2.12 → 1.2.14
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.
- package/dist/commands/chat.commands.d.ts +5 -0
- package/dist/commands/chat.commands.d.ts.map +1 -0
- package/dist/commands/chat.commands.js +203 -0
- package/dist/commands/chat.commands.js.map +1 -0
- package/dist/commands/document.commands.d.ts +6 -0
- package/dist/commands/document.commands.d.ts.map +1 -0
- package/dist/commands/document.commands.js +391 -0
- package/dist/commands/document.commands.js.map +1 -0
- package/dist/commands/playback.commands.d.ts +5 -0
- package/dist/commands/playback.commands.d.ts.map +1 -0
- package/dist/commands/playback.commands.js +406 -0
- package/dist/commands/playback.commands.js.map +1 -0
- package/dist/commands/player.commands.d.ts +7 -0
- package/dist/commands/player.commands.d.ts.map +1 -0
- package/dist/commands/player.commands.js +240 -0
- package/dist/commands/player.commands.js.map +1 -0
- package/dist/commands/product.commands.d.ts.map +1 -1
- package/dist/commands/product.commands.js +24 -13
- package/dist/commands/product.commands.js.map +1 -1
- package/dist/commands/record.commands.d.ts +8 -0
- package/dist/commands/record.commands.d.ts.map +1 -0
- package/dist/commands/record.commands.js +359 -0
- package/dist/commands/record.commands.js.map +1 -0
- package/dist/commands/session.commands.d.ts +4 -0
- package/dist/commands/session.commands.d.ts.map +1 -0
- package/dist/commands/session.commands.js +238 -0
- package/dist/commands/session.commands.js.map +1 -0
- package/dist/commands/statistics.commands.d.ts +6 -0
- package/dist/commands/statistics.commands.d.ts.map +1 -0
- package/dist/commands/statistics.commands.export.d.ts +7 -0
- package/dist/commands/statistics.commands.export.d.ts.map +1 -0
- package/dist/commands/statistics.commands.export.js +232 -0
- package/dist/commands/statistics.commands.export.js.map +1 -0
- package/dist/commands/statistics.commands.js +401 -0
- package/dist/commands/statistics.commands.js.map +1 -0
- package/dist/handlers/chat.handler.d.ts +19 -0
- package/dist/handlers/chat.handler.d.ts.map +1 -0
- package/dist/handlers/chat.handler.js +170 -0
- package/dist/handlers/chat.handler.js.map +1 -0
- package/dist/handlers/document.handler.d.ts +51 -0
- package/dist/handlers/document.handler.d.ts.map +1 -0
- package/dist/handlers/document.handler.js +221 -0
- package/dist/handlers/document.handler.js.map +1 -0
- package/dist/handlers/playback.handler.d.ts +43 -0
- package/dist/handlers/playback.handler.d.ts.map +1 -0
- package/dist/handlers/playback.handler.js +260 -0
- package/dist/handlers/playback.handler.js.map +1 -0
- package/dist/handlers/player.handler.d.ts +21 -0
- package/dist/handlers/player.handler.d.ts.map +1 -0
- package/dist/handlers/player.handler.js +84 -0
- package/dist/handlers/player.handler.js.map +1 -0
- package/dist/handlers/product.handler.d.ts +1 -0
- package/dist/handlers/product.handler.d.ts.map +1 -1
- package/dist/handlers/product.handler.js +34 -17
- package/dist/handlers/product.handler.js.map +1 -1
- package/dist/handlers/record.handler.d.ts +24 -0
- package/dist/handlers/record.handler.d.ts.map +1 -0
- package/dist/handlers/record.handler.js +202 -0
- package/dist/handlers/record.handler.js.map +1 -0
- package/dist/handlers/session.handler.d.ts +27 -0
- package/dist/handlers/session.handler.d.ts.map +1 -0
- package/dist/handlers/session.handler.js +135 -0
- package/dist/handlers/session.handler.js.map +1 -0
- package/dist/handlers/statistics.handler.d.ts +37 -0
- package/dist/handlers/statistics.handler.d.ts.map +1 -0
- package/dist/handlers/statistics.handler.js +302 -0
- package/dist/handlers/statistics.handler.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -5
- package/dist/index.js.map +1 -1
- package/dist/services/chat.service.sdk.d.ts +15 -0
- package/dist/services/chat.service.sdk.d.ts.map +1 -0
- package/dist/services/chat.service.sdk.js +110 -0
- package/dist/services/chat.service.sdk.js.map +1 -0
- package/dist/services/document.service.sdk.d.ts +27 -0
- package/dist/services/document.service.sdk.d.ts.map +1 -0
- package/dist/services/document.service.sdk.js +151 -0
- package/dist/services/document.service.sdk.js.map +1 -0
- package/dist/services/playback.service.sdk.d.ts +31 -0
- package/dist/services/playback.service.sdk.d.ts.map +1 -0
- package/dist/services/playback.service.sdk.js +165 -0
- package/dist/services/playback.service.sdk.js.map +1 -0
- package/dist/services/player.service.sdk.d.ts +15 -0
- package/dist/services/player.service.sdk.d.ts.map +1 -0
- package/dist/services/player.service.sdk.js +110 -0
- package/dist/services/player.service.sdk.js.map +1 -0
- package/dist/services/product.service.sdk.d.ts.map +1 -1
- package/dist/services/product.service.sdk.js +39 -21
- package/dist/services/product.service.sdk.js.map +1 -1
- package/dist/services/record.service.sdk.d.ts +13 -0
- package/dist/services/record.service.sdk.d.ts.map +1 -0
- package/dist/services/record.service.sdk.js +132 -0
- package/dist/services/record.service.sdk.js.map +1 -0
- package/dist/services/session.service.sdk.d.ts +19 -0
- package/dist/services/session.service.sdk.d.ts.map +1 -0
- package/dist/services/session.service.sdk.js +105 -0
- package/dist/services/session.service.sdk.js.map +1 -0
- package/dist/services/statistics.service.sdk.d.ts +23 -0
- package/dist/services/statistics.service.sdk.d.ts.map +1 -0
- package/dist/services/statistics.service.sdk.js +284 -0
- package/dist/services/statistics.service.sdk.js.map +1 -0
- package/dist/types/chat.d.ts +35 -0
- package/dist/types/chat.d.ts.map +1 -0
- package/dist/types/chat.js +3 -0
- package/dist/types/chat.js.map +1 -0
- package/dist/types/document.d.ts +115 -0
- package/dist/types/document.d.ts.map +1 -0
- package/dist/types/document.js +12 -0
- package/dist/types/document.js.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/playback.d.ts +107 -0
- package/dist/types/playback.d.ts.map +1 -0
- package/dist/types/playback.js +10 -0
- package/dist/types/playback.js.map +1 -0
- package/dist/types/player.d.ts +34 -0
- package/dist/types/player.d.ts.map +1 -0
- package/dist/types/player.js +3 -0
- package/dist/types/player.js.map +1 -0
- package/dist/types/product.d.ts +1 -0
- package/dist/types/product.d.ts.map +1 -1
- package/dist/types/record.d.ts +76 -0
- package/dist/types/record.d.ts.map +1 -0
- package/dist/types/record.js +3 -0
- package/dist/types/record.js.map +1 -0
- package/dist/types/session.d.ts +78 -0
- package/dist/types/session.d.ts.map +1 -0
- package/dist/types/session.js +8 -0
- package/dist/types/session.js.map +1 -0
- package/dist/types/statistics-export.d.ts +42 -0
- package/dist/types/statistics-export.d.ts.map +1 -0
- package/dist/types/statistics-export.js +8 -0
- package/dist/types/statistics-export.js.map +1 -0
- package/dist/types/statistics.d.ts +72 -0
- package/dist/types/statistics.d.ts.map +1 -0
- package/dist/types/statistics.js +3 -0
- package/dist/types/statistics.js.map +1 -0
- package/dist/utils/date-validation.d.ts +22 -0
- package/dist/utils/date-validation.d.ts.map +1 -0
- package/dist/utils/date-validation.js +118 -0
- package/dist/utils/date-validation.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.validateOutputFormat = validateOutputFormat;
|
|
37
|
+
exports.validateYN = validateYN;
|
|
38
|
+
exports.validatePlaybackType = validatePlaybackType;
|
|
39
|
+
exports.validatePlaybackOrigin = validatePlaybackOrigin;
|
|
40
|
+
exports.validateListType = validateListType;
|
|
41
|
+
exports.registerRecordCommands = registerRecordCommands;
|
|
42
|
+
const manager_1 = require("../config/manager");
|
|
43
|
+
const auth_adapter_1 = require("../config/auth-adapter");
|
|
44
|
+
const errors_1 = require("../utils/errors");
|
|
45
|
+
async function loadAuthAndServiceConfig(parentOptions) {
|
|
46
|
+
const authResult = auth_adapter_1.authAdapter.tryGetAuthConfig(parentOptions);
|
|
47
|
+
if (!authResult) {
|
|
48
|
+
throw new Error(auth_adapter_1.authAdapter.getStatusMessage(parentOptions));
|
|
49
|
+
}
|
|
50
|
+
let configResult;
|
|
51
|
+
try {
|
|
52
|
+
configResult = await manager_1.configManager.load({
|
|
53
|
+
cliOptions: parentOptions,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
if (error instanceof Error && error.message.includes('Auth configuration is incomplete')) {
|
|
58
|
+
configResult = {
|
|
59
|
+
config: {
|
|
60
|
+
baseUrl: 'https://api.polyv.net',
|
|
61
|
+
timeout: 30000,
|
|
62
|
+
debug: false
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
throw error;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
const serviceConfig = {
|
|
71
|
+
baseUrl: configResult.config.baseUrl,
|
|
72
|
+
timeout: configResult.config.timeout,
|
|
73
|
+
debug: configResult.config.debug
|
|
74
|
+
};
|
|
75
|
+
const isVerbose = !!parentOptions.verbose;
|
|
76
|
+
if (isVerbose) {
|
|
77
|
+
console.log(`🔐 Authentication Source: ${authResult.source}`);
|
|
78
|
+
if (authResult.accountName) {
|
|
79
|
+
console.log(`👤 Account: ${authResult.accountName}`);
|
|
80
|
+
}
|
|
81
|
+
console.log('');
|
|
82
|
+
}
|
|
83
|
+
const result = {
|
|
84
|
+
authConfig: authResult.config,
|
|
85
|
+
serviceConfig,
|
|
86
|
+
isVerbose,
|
|
87
|
+
};
|
|
88
|
+
if (authResult.source) {
|
|
89
|
+
result.authSource = authResult.source;
|
|
90
|
+
}
|
|
91
|
+
if (authResult.accountName) {
|
|
92
|
+
result.accountName = authResult.accountName;
|
|
93
|
+
}
|
|
94
|
+
return result;
|
|
95
|
+
}
|
|
96
|
+
function validateOutputFormat(value) {
|
|
97
|
+
if (!['table', 'json'].includes(value)) {
|
|
98
|
+
throw new Error('Output format must be either "table" or "json"');
|
|
99
|
+
}
|
|
100
|
+
return value;
|
|
101
|
+
}
|
|
102
|
+
function validateYN(value) {
|
|
103
|
+
const upper = value.toUpperCase();
|
|
104
|
+
if (!['Y', 'N'].includes(upper)) {
|
|
105
|
+
throw new Error('Value must be either "Y" or "N"');
|
|
106
|
+
}
|
|
107
|
+
return upper;
|
|
108
|
+
}
|
|
109
|
+
function validatePlaybackType(value) {
|
|
110
|
+
if (!['single', 'list'].includes(value)) {
|
|
111
|
+
throw new Error('Playback type must be either "single" or "list"');
|
|
112
|
+
}
|
|
113
|
+
return value;
|
|
114
|
+
}
|
|
115
|
+
function validatePlaybackOrigin(value) {
|
|
116
|
+
if (!['record', 'playback', 'vod', 'material'].includes(value)) {
|
|
117
|
+
throw new Error('Playback origin must be one of: record, playback, vod, material');
|
|
118
|
+
}
|
|
119
|
+
return value;
|
|
120
|
+
}
|
|
121
|
+
function validateListType(value) {
|
|
122
|
+
if (!['playback', 'vod'].includes(value)) {
|
|
123
|
+
throw new Error('List type must be either "playback" or "vod"');
|
|
124
|
+
}
|
|
125
|
+
return value;
|
|
126
|
+
}
|
|
127
|
+
function registerRecordCommands(program) {
|
|
128
|
+
const recordCmd = program.command('record');
|
|
129
|
+
recordCmd.description('录制设置管理命令');
|
|
130
|
+
const settingCmd = recordCmd.command('setting');
|
|
131
|
+
settingCmd.description('回放设置管理');
|
|
132
|
+
const settingGetCmd = settingCmd
|
|
133
|
+
.command('get')
|
|
134
|
+
.description(`获取频道回放设置
|
|
135
|
+
|
|
136
|
+
Examples:
|
|
137
|
+
$ polyv-live-cli record setting get -c "2588188"
|
|
138
|
+
$ polyv-live-cli record setting get -c "2588188" -o json`)
|
|
139
|
+
.requiredOption('-c, --channel-id <channelId>', '频道ID')
|
|
140
|
+
.option('-o, --output <format>', '输出格式 (table|json)', validateOutputFormat, 'table')
|
|
141
|
+
.action(async function (options) {
|
|
142
|
+
try {
|
|
143
|
+
const parentOptions = this.optsWithGlobals();
|
|
144
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
145
|
+
const { RecordHandler } = await Promise.resolve().then(() => __importStar(require('../handlers/record.handler')));
|
|
146
|
+
const recordHandler = new RecordHandler(authConfig, serviceConfig);
|
|
147
|
+
const getOptions = {
|
|
148
|
+
channelId: options.channelId,
|
|
149
|
+
output: options.output
|
|
150
|
+
};
|
|
151
|
+
await recordHandler.getPlaybackSetting(getOptions);
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
155
|
+
process.exit(1);
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
settingGetCmd.addHelpText('after', `
|
|
159
|
+
Examples:
|
|
160
|
+
# 获取频道回放设置
|
|
161
|
+
$ polyv-live-cli record setting get -c "2588188"
|
|
162
|
+
|
|
163
|
+
# JSON格式输出
|
|
164
|
+
$ polyv-live-cli record setting get -c "2588188" -o json
|
|
165
|
+
|
|
166
|
+
Options:
|
|
167
|
+
-c, --channel-id 频道ID (必填)
|
|
168
|
+
-o, --output 输出格式: table 或 json,默认为table
|
|
169
|
+
`);
|
|
170
|
+
const settingSetCmd = settingCmd
|
|
171
|
+
.command('set')
|
|
172
|
+
.description(`设置频道回放设置
|
|
173
|
+
|
|
174
|
+
Examples:
|
|
175
|
+
$ polyv-live-cli record setting set -c "2588188" --playback-enabled Y
|
|
176
|
+
$ polyv-live-cli record setting set -c "2588188" --playback-enabled Y --type single --origin playback --video-id "73801f70c8"
|
|
177
|
+
$ polyv-live-cli record setting set -c "2588188" --playback-enabled Y --playback-multiplier-enabled Y`)
|
|
178
|
+
.requiredOption('-c, --channel-id <channelId>', '频道ID')
|
|
179
|
+
.option('--playback-enabled <value>', '回放开关 (Y|N)', validateYN)
|
|
180
|
+
.option('--type <type>', '回放方式 (single|list)', validatePlaybackType)
|
|
181
|
+
.option('--origin <origin>', '回放来源 (record|playback|vod|material)', validatePlaybackOrigin)
|
|
182
|
+
.option('--video-id <videoId>', '回放的视频ID')
|
|
183
|
+
.option('--playback-multiplier-enabled <value>', '倍数播放开关 (Y|N)', validateYN)
|
|
184
|
+
.option('--playback-progress-bar-enabled <value>', '进度条开关 (Y|N)', validateYN)
|
|
185
|
+
.option('--chat-playback-enabled <value>', '聊天互动重现开关 (Y|N)', validateYN)
|
|
186
|
+
.option('--product-playback-enabled <value>', '商品库开关 (Y|N)', validateYN)
|
|
187
|
+
.option('-o, --output <format>', '输出格式 (table|json)', validateOutputFormat, 'table')
|
|
188
|
+
.action(async function (options) {
|
|
189
|
+
try {
|
|
190
|
+
const parentOptions = this.optsWithGlobals();
|
|
191
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
192
|
+
const { RecordHandler } = await Promise.resolve().then(() => __importStar(require('../handlers/record.handler')));
|
|
193
|
+
const recordHandler = new RecordHandler(authConfig, serviceConfig);
|
|
194
|
+
const setOptions = {
|
|
195
|
+
channelId: options.channelId,
|
|
196
|
+
output: options.output
|
|
197
|
+
};
|
|
198
|
+
if (options.playbackEnabled !== undefined)
|
|
199
|
+
setOptions.playbackEnabled = options.playbackEnabled;
|
|
200
|
+
if (options.type !== undefined)
|
|
201
|
+
setOptions.type = options.type;
|
|
202
|
+
if (options.origin !== undefined)
|
|
203
|
+
setOptions.origin = options.origin;
|
|
204
|
+
if (options.videoId !== undefined)
|
|
205
|
+
setOptions.videoId = options.videoId;
|
|
206
|
+
if (options.playbackMultiplierEnabled !== undefined)
|
|
207
|
+
setOptions.playbackMultiplierEnabled = options.playbackMultiplierEnabled;
|
|
208
|
+
if (options.playbackProgressBarEnabled !== undefined)
|
|
209
|
+
setOptions.playbackProgressBarEnabled = options.playbackProgressBarEnabled;
|
|
210
|
+
if (options.chatPlaybackEnabled !== undefined)
|
|
211
|
+
setOptions.chatPlaybackEnabled = options.chatPlaybackEnabled;
|
|
212
|
+
if (options.productPlaybackEnabled !== undefined)
|
|
213
|
+
setOptions.productPlaybackEnabled = options.productPlaybackEnabled;
|
|
214
|
+
await recordHandler.setPlaybackSetting(setOptions);
|
|
215
|
+
}
|
|
216
|
+
catch (error) {
|
|
217
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
218
|
+
process.exit(1);
|
|
219
|
+
}
|
|
220
|
+
});
|
|
221
|
+
settingSetCmd.addHelpText('after', `
|
|
222
|
+
Examples:
|
|
223
|
+
# 开启回放
|
|
224
|
+
$ polyv-live-cli record setting set -c "2588188" --playback-enabled Y
|
|
225
|
+
|
|
226
|
+
# 设置单个回放方式,指定视频
|
|
227
|
+
$ polyv-live-cli record setting set -c "2588188" --playback-enabled Y --type single --origin playback --video-id "73801f70c8"
|
|
228
|
+
|
|
229
|
+
# 开启倍数播放
|
|
230
|
+
$ polyv-live-cli record setting set -c "2588188" --playback-enabled Y --playback-multiplier-enabled Y
|
|
231
|
+
|
|
232
|
+
Options:
|
|
233
|
+
-c, --channel-id 频道ID (必填)
|
|
234
|
+
--playback-enabled 回放开关: Y(开启) 或 N(关闭)
|
|
235
|
+
--type 回放方式: single(单个回放) 或 list(列表回放)
|
|
236
|
+
--origin 回放来源: record(录制文件), playback(回放列表), vod(点播列表), material(素材库)
|
|
237
|
+
--video-id 回放的视频ID
|
|
238
|
+
--playback-multiplier-enabled 倍数播放开关: Y 或 N
|
|
239
|
+
--playback-progress-bar-enabled 进度条开关: Y 或 N
|
|
240
|
+
--chat-playback-enabled 聊天互动重现开关: Y 或 N
|
|
241
|
+
--product-playback-enabled 商品库开关: Y 或 N
|
|
242
|
+
-o, --output 输出格式: table 或 json,默认为table
|
|
243
|
+
`);
|
|
244
|
+
const convertCmd = recordCmd
|
|
245
|
+
.command('convert')
|
|
246
|
+
.description(`转存录制文件到点播
|
|
247
|
+
|
|
248
|
+
Examples:
|
|
249
|
+
$ polyv-live-cli record convert -c "2588188" --session-id "fvlyin8qz3" --file-name "测试转存"
|
|
250
|
+
$ polyv-live-cli record convert -c "2588188" --session-id "fvlyin8qz3" --file-name "测试转存" --to-play-list Y --set-as-default Y
|
|
251
|
+
$ polyv-live-cli record convert -c "2588188" --session-id "fvlyin8qz3" --file-name "测试转存" --async`)
|
|
252
|
+
.requiredOption('-c, --channel-id <channelId>', '频道ID')
|
|
253
|
+
.requiredOption('--file-name <fileName>', '转存后的点播视频名称')
|
|
254
|
+
.option('--session-id <sessionId>', '直播场次ID')
|
|
255
|
+
.option('--to-play-list <value>', '是否存放到回放列表 (Y|N)', validateYN)
|
|
256
|
+
.option('--set-as-default <value>', '是否设为默认回放视频 (Y|N)', validateYN)
|
|
257
|
+
.option('--async', '使用异步转存模式', false)
|
|
258
|
+
.option('--callback-url <url>', '转存完成后的回调URL(异步模式)')
|
|
259
|
+
.option('-o, --output <format>', '输出格式 (table|json)', validateOutputFormat, 'table')
|
|
260
|
+
.action(async function (options) {
|
|
261
|
+
try {
|
|
262
|
+
const parentOptions = this.optsWithGlobals();
|
|
263
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
264
|
+
const { RecordHandler } = await Promise.resolve().then(() => __importStar(require('../handlers/record.handler')));
|
|
265
|
+
const recordHandler = new RecordHandler(authConfig, serviceConfig);
|
|
266
|
+
const convertOptions = {
|
|
267
|
+
channelId: options.channelId,
|
|
268
|
+
fileName: options.fileName,
|
|
269
|
+
async: options.async,
|
|
270
|
+
output: options.output
|
|
271
|
+
};
|
|
272
|
+
if (options.sessionId !== undefined)
|
|
273
|
+
convertOptions.sessionId = options.sessionId;
|
|
274
|
+
if (options.toPlayList !== undefined)
|
|
275
|
+
convertOptions.toPlayList = options.toPlayList;
|
|
276
|
+
if (options.setAsDefault !== undefined)
|
|
277
|
+
convertOptions.setAsDefault = options.setAsDefault;
|
|
278
|
+
if (options.callbackUrl !== undefined)
|
|
279
|
+
convertOptions.callbackUrl = options.callbackUrl;
|
|
280
|
+
await recordHandler.recordConvert(convertOptions);
|
|
281
|
+
}
|
|
282
|
+
catch (error) {
|
|
283
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
284
|
+
process.exit(1);
|
|
285
|
+
}
|
|
286
|
+
});
|
|
287
|
+
convertCmd.addHelpText('after', `
|
|
288
|
+
Examples:
|
|
289
|
+
# 同步转存录制文件到点播
|
|
290
|
+
$ polyv-live-cli record convert -c "2588188" --session-id "fvlyin8qz3" --file-name "测试转存"
|
|
291
|
+
|
|
292
|
+
# 转存并添加到回放列表、设为默认回放
|
|
293
|
+
$ polyv-live-cli record convert -c "2588188" --session-id "fvlyin8qz3" --file-name "测试转存" --to-play-list Y --set-as-default Y
|
|
294
|
+
|
|
295
|
+
# 异步转存模式
|
|
296
|
+
$ polyv-live-cli record convert -c "2588188" --session-id "fvlyin8qz3" --file-name "测试转存" --async
|
|
297
|
+
|
|
298
|
+
Options:
|
|
299
|
+
-c, --channel-id 频道ID (必填)
|
|
300
|
+
--file-name 转存后的点播视频名称 (必填)
|
|
301
|
+
--session-id 直播场次ID
|
|
302
|
+
--to-play-list 是否存放到回放列表: Y 或 N
|
|
303
|
+
--set-as-default 是否设为默认回放视频: Y 或 N
|
|
304
|
+
--async 使用异步转存模式
|
|
305
|
+
--callback-url 转存完成后的回调URL(异步模式)
|
|
306
|
+
-o, --output 输出格式: table 或 json,默认为table
|
|
307
|
+
|
|
308
|
+
Notes:
|
|
309
|
+
- 同一个POLYV账号,调用该接口的间隔至少5分钟
|
|
310
|
+
- 同步模式会等待转存完成后返回视频ID
|
|
311
|
+
- 异步模式会立即返回,转存完成后可在点播后台查看
|
|
312
|
+
`);
|
|
313
|
+
const setDefaultCmd = recordCmd
|
|
314
|
+
.command('set-default')
|
|
315
|
+
.description(`设置默认回放视频
|
|
316
|
+
|
|
317
|
+
Examples:
|
|
318
|
+
$ polyv-live-cli record set-default -c "2588188" --video-id "73801f70c8"
|
|
319
|
+
$ polyv-live-cli record set-default -c "2588188" --video-id "73801f70c8" --list-type playback -o json`)
|
|
320
|
+
.requiredOption('-c, --channel-id <channelId>', '频道ID')
|
|
321
|
+
.requiredOption('--video-id <videoId>', '视频ID')
|
|
322
|
+
.option('--list-type <type>', '视频列表类型 (playback|vod)', validateListType)
|
|
323
|
+
.option('-o, --output <format>', '输出格式 (table|json)', validateOutputFormat, 'table')
|
|
324
|
+
.action(async function (options) {
|
|
325
|
+
try {
|
|
326
|
+
const parentOptions = this.optsWithGlobals();
|
|
327
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
328
|
+
const { RecordHandler } = await Promise.resolve().then(() => __importStar(require('../handlers/record.handler')));
|
|
329
|
+
const recordHandler = new RecordHandler(authConfig, serviceConfig);
|
|
330
|
+
const setDefaultOptions = {
|
|
331
|
+
channelId: options.channelId,
|
|
332
|
+
videoId: options.videoId,
|
|
333
|
+
output: options.output
|
|
334
|
+
};
|
|
335
|
+
if (options.listType !== undefined)
|
|
336
|
+
setDefaultOptions.listType = options.listType;
|
|
337
|
+
await recordHandler.setRecordDefault(setDefaultOptions);
|
|
338
|
+
}
|
|
339
|
+
catch (error) {
|
|
340
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
341
|
+
process.exit(1);
|
|
342
|
+
}
|
|
343
|
+
});
|
|
344
|
+
setDefaultCmd.addHelpText('after', `
|
|
345
|
+
Examples:
|
|
346
|
+
# 设置默认回放视频
|
|
347
|
+
$ polyv-live-cli record set-default -c "2588188" --video-id "73801f70c8"
|
|
348
|
+
|
|
349
|
+
# 指定列表类型,JSON格式输出
|
|
350
|
+
$ polyv-live-cli record set-default -c "2588188" --video-id "73801f70c8" --list-type playback -o json
|
|
351
|
+
|
|
352
|
+
Options:
|
|
353
|
+
-c, --channel-id 频道ID (必填)
|
|
354
|
+
--video-id 视频ID (必填)
|
|
355
|
+
--list-type 视频列表类型: playback(回放列表) 或 vod(点播列表)
|
|
356
|
+
-o, --output 输出格式: table 或 json,默认为table
|
|
357
|
+
`);
|
|
358
|
+
}
|
|
359
|
+
//# sourceMappingURL=record.commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record.commands.js","sourceRoot":"","sources":["../../src/commands/record.commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.commands.d.ts","sourceRoot":"","sources":["../../src/commands/session.commands.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyFpC,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAKpE;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwK9D"}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.validateOutputFormat = validateOutputFormat;
|
|
37
|
+
exports.registerSessionCommands = registerSessionCommands;
|
|
38
|
+
const manager_1 = require("../config/manager");
|
|
39
|
+
const auth_adapter_1 = require("../config/auth-adapter");
|
|
40
|
+
const errors_1 = require("../utils/errors");
|
|
41
|
+
async function loadAuthAndServiceConfig(parentOptions) {
|
|
42
|
+
const authResult = auth_adapter_1.authAdapter.tryGetAuthConfig(parentOptions);
|
|
43
|
+
if (!authResult) {
|
|
44
|
+
throw new Error(auth_adapter_1.authAdapter.getStatusMessage(parentOptions));
|
|
45
|
+
}
|
|
46
|
+
let configResult;
|
|
47
|
+
try {
|
|
48
|
+
configResult = await manager_1.configManager.load({
|
|
49
|
+
cliOptions: parentOptions,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
if (error instanceof Error && error.message.includes('Auth configuration is incomplete')) {
|
|
54
|
+
configResult = {
|
|
55
|
+
config: {
|
|
56
|
+
baseUrl: 'https://api.polyv.net',
|
|
57
|
+
timeout: 30000,
|
|
58
|
+
debug: false
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
throw error;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const serviceConfig = {
|
|
67
|
+
baseUrl: configResult.config.baseUrl,
|
|
68
|
+
timeout: configResult.config.timeout,
|
|
69
|
+
debug: configResult.config.debug
|
|
70
|
+
};
|
|
71
|
+
const isVerbose = !!parentOptions.verbose;
|
|
72
|
+
if (isVerbose) {
|
|
73
|
+
console.log(`🔐 Authentication Source: ${authResult.source}`);
|
|
74
|
+
if (authResult.accountName) {
|
|
75
|
+
console.log(`👤 Account: ${authResult.accountName}`);
|
|
76
|
+
}
|
|
77
|
+
console.log('');
|
|
78
|
+
}
|
|
79
|
+
const result = {
|
|
80
|
+
authConfig: authResult.config,
|
|
81
|
+
serviceConfig,
|
|
82
|
+
isVerbose,
|
|
83
|
+
};
|
|
84
|
+
if (authResult.source) {
|
|
85
|
+
result.authSource = authResult.source;
|
|
86
|
+
}
|
|
87
|
+
if (authResult.accountName) {
|
|
88
|
+
result.accountName = authResult.accountName;
|
|
89
|
+
}
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
function validateOutputFormat(value) {
|
|
93
|
+
if (!['table', 'json'].includes(value)) {
|
|
94
|
+
throw new Error('Output format must be either "table" or "json"');
|
|
95
|
+
}
|
|
96
|
+
return value;
|
|
97
|
+
}
|
|
98
|
+
function registerSessionCommands(program) {
|
|
99
|
+
const sessionCmd = program.command('session');
|
|
100
|
+
sessionCmd.description('场次管理命令');
|
|
101
|
+
const listCmd = sessionCmd
|
|
102
|
+
.command('list')
|
|
103
|
+
.description(`获取频道场次列表
|
|
104
|
+
|
|
105
|
+
Examples:
|
|
106
|
+
$ polyv-live-cli session list
|
|
107
|
+
$ polyv-live-cli session list -c "2588188"
|
|
108
|
+
$ polyv-live-cli session list -c "2588188" --page 1 --page-size 20
|
|
109
|
+
$ polyv-live-cli session list -c "2588188" --start-date "2024-01-01" --end-date "2024-01-31"
|
|
110
|
+
$ polyv-live-cli session list -c "2588188" -o json`)
|
|
111
|
+
.option('-c, --channel-id <channelId>', '频道ID(不传则获取全部频道场次)')
|
|
112
|
+
.option('--page <number>', '页码,默认为1', (value) => parseInt(value, 10), 1)
|
|
113
|
+
.option('--page-size <number>', '每页数量,默认为10', (value) => parseInt(value, 10), 10)
|
|
114
|
+
.option('--start-date <date>', '开始日期 (格式: YYYY-MM-DD)')
|
|
115
|
+
.option('--end-date <date>', '结束日期 (格式: YYYY-MM-DD)')
|
|
116
|
+
.option('-o, --output <format>', '输出格式 (table|json)', validateOutputFormat, 'table')
|
|
117
|
+
.action(async function (options) {
|
|
118
|
+
try {
|
|
119
|
+
const parentOptions = this.optsWithGlobals();
|
|
120
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
121
|
+
const { SessionHandler } = await Promise.resolve().then(() => __importStar(require('../handlers/session.handler')));
|
|
122
|
+
const sessionHandler = new SessionHandler(authConfig, serviceConfig);
|
|
123
|
+
const listOptions = {
|
|
124
|
+
channelId: options.channelId,
|
|
125
|
+
page: options.page,
|
|
126
|
+
pageSize: options.pageSize,
|
|
127
|
+
startDate: options.startDate,
|
|
128
|
+
endDate: options.endDate,
|
|
129
|
+
output: options.output
|
|
130
|
+
};
|
|
131
|
+
await sessionHandler.listSessions(listOptions);
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
if (error instanceof Error && error.message.includes('Authentication')) {
|
|
135
|
+
const diagnostics = auth_adapter_1.authAdapter.getDiagnostics(program.opts());
|
|
136
|
+
console.error('\n🔍 Authentication Diagnostics:');
|
|
137
|
+
diagnostics.availableSources.forEach(source => {
|
|
138
|
+
const status = source.appId && source.appSecret ? '✅' : '❌';
|
|
139
|
+
console.error(` ${status} ${source.metadata.source}: ${source.type}`);
|
|
140
|
+
});
|
|
141
|
+
if (diagnostics.errors.length > 0) {
|
|
142
|
+
console.error('\n❌ Errors:');
|
|
143
|
+
diagnostics.errors.forEach(err => console.error(` - ${err}`));
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
147
|
+
process.exit(1);
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
listCmd.addHelpText('after', `
|
|
151
|
+
Examples:
|
|
152
|
+
# 获取全部频道场次列表
|
|
153
|
+
$ polyv-live-cli session list
|
|
154
|
+
|
|
155
|
+
# 获取指定频道场次列表
|
|
156
|
+
$ polyv-live-cli session list -c "2588188"
|
|
157
|
+
|
|
158
|
+
# 指定分页参数
|
|
159
|
+
$ polyv-live-cli session list -c "2588188" --page 2 --page-size 20
|
|
160
|
+
|
|
161
|
+
# 指定日期范围过滤
|
|
162
|
+
$ polyv-live-cli session list -c "2588188" --start-date "2024-01-01" --end-date "2024-01-31"
|
|
163
|
+
|
|
164
|
+
# JSON格式输出
|
|
165
|
+
$ polyv-live-cli session list -c "2588188" -o json
|
|
166
|
+
|
|
167
|
+
Options:
|
|
168
|
+
-c, --channel-id 频道ID(不传则获取全部频道场次)
|
|
169
|
+
--page 页码,默认为1
|
|
170
|
+
--page-size 每页数量,默认为10
|
|
171
|
+
--start-date 开始日期 (格式: YYYY-MM-DD)
|
|
172
|
+
--end-date 结束日期 (格式: YYYY-MM-DD)
|
|
173
|
+
-o, --output 输出格式: table 或 json,默认为table
|
|
174
|
+
|
|
175
|
+
Notes:
|
|
176
|
+
- 不指定频道ID时,将获取账号下全部频道的场次
|
|
177
|
+
- 场次状态包括: 未开始、直播中、已结束、回放中、已过期
|
|
178
|
+
- 日期范围过滤为可选参数,不传则不限制日期范围
|
|
179
|
+
`);
|
|
180
|
+
const getCmd = sessionCmd
|
|
181
|
+
.command('get')
|
|
182
|
+
.description(`获取单个场次详情
|
|
183
|
+
|
|
184
|
+
Examples:
|
|
185
|
+
$ polyv-live-cli session get -c "2588188" --session-id "e9s2h3jd8f"
|
|
186
|
+
$ polyv-live-cli session get -c "2588188" --session-id "e9s2h3jd8f" -o json`)
|
|
187
|
+
.requiredOption('-c, --channel-id <channelId>', '频道ID')
|
|
188
|
+
.requiredOption('--session-id <sessionId>', '场次ID')
|
|
189
|
+
.option('-o, --output <format>', '输出格式 (table|json)', validateOutputFormat, 'table')
|
|
190
|
+
.action(async function (options) {
|
|
191
|
+
try {
|
|
192
|
+
const parentOptions = this.optsWithGlobals();
|
|
193
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
194
|
+
const { SessionHandler } = await Promise.resolve().then(() => __importStar(require('../handlers/session.handler')));
|
|
195
|
+
const sessionHandler = new SessionHandler(authConfig, serviceConfig);
|
|
196
|
+
const getOptions = {
|
|
197
|
+
channelId: options.channelId,
|
|
198
|
+
sessionId: options.sessionId,
|
|
199
|
+
output: options.output
|
|
200
|
+
};
|
|
201
|
+
await sessionHandler.getSession(getOptions);
|
|
202
|
+
}
|
|
203
|
+
catch (error) {
|
|
204
|
+
if (error instanceof Error && error.message.includes('Authentication')) {
|
|
205
|
+
const diagnostics = auth_adapter_1.authAdapter.getDiagnostics(program.opts());
|
|
206
|
+
console.error('\n🔍 Authentication Diagnostics:');
|
|
207
|
+
diagnostics.availableSources.forEach(source => {
|
|
208
|
+
const status = source.appId && source.appSecret ? '✅' : '❌';
|
|
209
|
+
console.error(` ${status} ${source.metadata.source}: ${source.type}`);
|
|
210
|
+
});
|
|
211
|
+
if (diagnostics.errors.length > 0) {
|
|
212
|
+
console.error('\n❌ Errors:');
|
|
213
|
+
diagnostics.errors.forEach(err => console.error(` - ${err}`));
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
217
|
+
process.exit(1);
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
getCmd.addHelpText('after', `
|
|
221
|
+
Examples:
|
|
222
|
+
# 获取场次详情
|
|
223
|
+
$ polyv-live-cli session get -c "2588188" --session-id "e9s2h3jd8f"
|
|
224
|
+
|
|
225
|
+
# JSON格式输出
|
|
226
|
+
$ polyv-live-cli session get -c "2588188" --session-id "e9s2h3jd8f" -o json
|
|
227
|
+
|
|
228
|
+
Options:
|
|
229
|
+
-c, --channel-id 频道ID (必填)
|
|
230
|
+
--session-id 场次ID (必填)
|
|
231
|
+
-o, --output 输出格式: table 或 json,默认为table
|
|
232
|
+
|
|
233
|
+
Notes:
|
|
234
|
+
- 频道ID和场次ID都是必填参数
|
|
235
|
+
- 如果场次不存在,会显示友好的错误提示
|
|
236
|
+
`);
|
|
237
|
+
}
|
|
238
|
+
//# sourceMappingURL=session.commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.commands.js","sourceRoot":"","sources":["../../src/commands/session.commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
export declare function validateOutputFormat(value: string): 'table' | 'json';
|
|
3
|
+
export declare function validateDateFormat(value: string): string;
|
|
4
|
+
export declare function validateDateRange(startDay: string, endDay: string): void;
|
|
5
|
+
export declare function registerStatisticsCommands(program: Command): void;
|
|
6
|
+
//# sourceMappingURL=statistics.commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statistics.commands.d.ts","sourceRoot":"","sources":["../../src/commands/statistics.commands.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsGpC,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAKpE;AAQD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAuBxD;AAQD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAKxE;AAMD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqYjE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
export declare function validateOutputFormat(value: string): 'table' | 'json';
|
|
3
|
+
export declare function validateDateTimeFormat(value: string): string;
|
|
4
|
+
export declare function validateWatchType(value: string): 'live' | 'vod';
|
|
5
|
+
export declare function validateSameMonth(startDate: string, endDate: string): void;
|
|
6
|
+
export declare function registerStatisticsExportCommands(program: Command): void;
|
|
7
|
+
//# sourceMappingURL=statistics.commands.export.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statistics.commands.export.d.ts","sourceRoot":"","sources":["../../src/commands/statistics.commands.export.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgGpC,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAKpE;AAQD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAa5D;AAQD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAK/D;AAQD,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAM1E;AAMD,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgLvE"}
|