polyv-live-cli 1.1.13 → 1.2.6
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/coupon.commands.d.ts +8 -0
- package/dist/commands/coupon.commands.d.ts.map +1 -0
- package/dist/commands/coupon.commands.js +258 -0
- package/dist/commands/coupon.commands.js.map +1 -0
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +3 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/product.commands.d.ts +10 -0
- package/dist/commands/product.commands.d.ts.map +1 -0
- package/dist/commands/product.commands.js +398 -0
- package/dist/commands/product.commands.js.map +1 -0
- package/dist/commands/setup.commands.d.ts +4 -0
- package/dist/commands/setup.commands.d.ts.map +1 -0
- package/dist/commands/setup.commands.js +132 -0
- package/dist/commands/setup.commands.js.map +1 -0
- package/dist/commands/stream.commands.d.ts.map +1 -1
- package/dist/commands/stream.commands.js +7 -15
- package/dist/commands/stream.commands.js.map +1 -1
- package/dist/handlers/channel.handler.d.ts.map +1 -1
- package/dist/handlers/channel.handler.js +2 -2
- package/dist/handlers/channel.handler.js.map +1 -1
- package/dist/handlers/coupon.handler.d.ts +54 -0
- package/dist/handlers/coupon.handler.d.ts.map +1 -0
- package/dist/handlers/coupon.handler.js +258 -0
- package/dist/handlers/coupon.handler.js.map +1 -0
- package/dist/handlers/product.handler.d.ts +28 -0
- package/dist/handlers/product.handler.d.ts.map +1 -0
- package/dist/handlers/product.handler.js +182 -0
- package/dist/handlers/product.handler.js.map +1 -0
- package/dist/handlers/setup.handler.d.ts +30 -0
- package/dist/handlers/setup.handler.d.ts.map +1 -0
- package/dist/handlers/setup.handler.js +160 -0
- package/dist/handlers/setup.handler.js.map +1 -0
- package/dist/handlers/stream.handler.d.ts +3 -2
- package/dist/handlers/stream.handler.d.ts.map +1 -1
- package/dist/handlers/stream.handler.js +3 -2
- package/dist/handlers/stream.handler.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -4
- package/dist/index.js.map +1 -1
- package/dist/sdk/client.d.ts +8 -0
- package/dist/sdk/client.d.ts.map +1 -0
- package/dist/sdk/client.js +37 -0
- package/dist/sdk/client.js.map +1 -0
- package/dist/sdk/index.d.ts +3 -0
- package/dist/sdk/index.d.ts.map +1 -0
- package/dist/sdk/index.js +12 -0
- package/dist/sdk/index.js.map +1 -0
- package/dist/services/{channel.service.d.ts → channel.service.sdk.d.ts} +6 -8
- package/dist/services/channel.service.sdk.d.ts.map +1 -0
- package/dist/services/channel.service.sdk.js +265 -0
- package/dist/services/channel.service.sdk.js.map +1 -0
- package/dist/services/index.d.ts +4 -3
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +7 -5
- package/dist/services/index.js.map +1 -1
- package/dist/services/product.service.sdk.d.ts +22 -0
- package/dist/services/product.service.sdk.d.ts.map +1 -0
- package/dist/services/product.service.sdk.js +242 -0
- package/dist/services/product.service.sdk.js.map +1 -0
- package/dist/services/{stream.service.d.ts → stream.service.sdk.d.ts} +4 -12
- package/dist/services/stream.service.sdk.d.ts.map +1 -0
- package/dist/services/stream.service.sdk.js +265 -0
- package/dist/services/stream.service.sdk.js.map +1 -0
- package/dist/setup/output-renderer.d.ts +39 -0
- package/dist/setup/output-renderer.d.ts.map +1 -0
- package/dist/setup/output-renderer.js +151 -0
- package/dist/setup/output-renderer.js.map +1 -0
- package/dist/setup/resource-handlers.d.ts +13 -0
- package/dist/setup/resource-handlers.d.ts.map +1 -0
- package/dist/setup/resource-handlers.js +136 -0
- package/dist/setup/resource-handlers.js.map +1 -0
- package/dist/setup/scene-config-loader.d.ts +52 -0
- package/dist/setup/scene-config-loader.d.ts.map +1 -0
- package/dist/setup/scene-config-loader.js +275 -0
- package/dist/setup/scene-config-loader.js.map +1 -0
- package/dist/setup/scene-executor.d.ts +44 -0
- package/dist/setup/scene-executor.d.ts.map +1 -0
- package/dist/setup/scene-executor.js +162 -0
- package/dist/setup/scene-executor.js.map +1 -0
- package/dist/setup/variable-resolver.d.ts +16 -0
- package/dist/setup/variable-resolver.d.ts.map +1 -0
- package/dist/setup/variable-resolver.js +176 -0
- package/dist/setup/variable-resolver.js.map +1 -0
- package/dist/setup-scenes/e-commerce.yaml +123 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/product.d.ts +135 -0
- package/dist/types/product.d.ts.map +1 -0
- package/dist/types/product.js +3 -0
- package/dist/types/product.js.map +1 -0
- package/dist/utils/data-manager.d.ts +3 -3
- package/dist/utils/data-manager.d.ts.map +1 -1
- package/dist/utils/data-manager.js.map +1 -1
- package/package.json +33 -32
- package/dist/services/channel.service.d.ts.map +0 -1
- package/dist/services/channel.service.js +0 -672
- package/dist/services/channel.service.js.map +0 -1
- package/dist/services/stream.service.d.ts.map +0 -1
- package/dist/services/stream.service.js +0 -489
- package/dist/services/stream.service.js.map +0 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
export declare function parseInteger(value: string): number;
|
|
3
|
+
export declare function validateCouponType(value: string): 'MAX_OUT' | 'DISCOUNT';
|
|
4
|
+
export declare function validateCouponStatus(value: string): 'NOT_START' | 'GOING' | 'FINISHED' | 'INVALID';
|
|
5
|
+
export declare function validateOutputFormat(value: string): 'table' | 'json';
|
|
6
|
+
export declare function validateSize(value: string): number;
|
|
7
|
+
export declare function registerCouponCommands(program: Command): void;
|
|
8
|
+
//# sourceMappingURL=coupon.commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupon.commands.d.ts","sourceRoot":"","sources":["../../src/commands/coupon.commands.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuFpC,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWlD;AAQD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAKxE;AAQD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAMlG;AAQD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAKpE;AAQD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMlD;AAMD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAuM7D"}
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseInteger = parseInteger;
|
|
4
|
+
exports.validateCouponType = validateCouponType;
|
|
5
|
+
exports.validateCouponStatus = validateCouponStatus;
|
|
6
|
+
exports.validateOutputFormat = validateOutputFormat;
|
|
7
|
+
exports.validateSize = validateSize;
|
|
8
|
+
exports.registerCouponCommands = registerCouponCommands;
|
|
9
|
+
const COUPON_NAME_MAX_LENGTH = 50;
|
|
10
|
+
const BATCH_DELETE_MAX_IDS = 200;
|
|
11
|
+
const PAGE_SIZE_MAX = 1000;
|
|
12
|
+
const DEFAULT_TIMEOUT_MS = 30000;
|
|
13
|
+
const coupon_handler_1 = require("../handlers/coupon.handler");
|
|
14
|
+
const manager_1 = require("../config/manager");
|
|
15
|
+
const auth_adapter_1 = require("../config/auth-adapter");
|
|
16
|
+
const errors_1 = require("../utils/errors");
|
|
17
|
+
async function loadAuthAndServiceConfig(parentOptions) {
|
|
18
|
+
const authResult = auth_adapter_1.authAdapter.tryGetAuthConfig(parentOptions);
|
|
19
|
+
if (!authResult) {
|
|
20
|
+
throw new Error(auth_adapter_1.authAdapter.getStatusMessage(parentOptions));
|
|
21
|
+
}
|
|
22
|
+
let configResult;
|
|
23
|
+
try {
|
|
24
|
+
configResult = await manager_1.configManager.load({
|
|
25
|
+
cliOptions: parentOptions,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
if (error instanceof Error && error.message.includes('Auth configuration is incomplete')) {
|
|
30
|
+
configResult = {
|
|
31
|
+
config: {
|
|
32
|
+
baseUrl: 'https://api.polyv.net',
|
|
33
|
+
timeout: DEFAULT_TIMEOUT_MS,
|
|
34
|
+
debug: false,
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
throw error;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
const serviceConfig = {
|
|
43
|
+
baseUrl: configResult.config.baseUrl,
|
|
44
|
+
timeout: configResult.config.timeout,
|
|
45
|
+
debug: configResult.config.debug,
|
|
46
|
+
};
|
|
47
|
+
const isVerbose = !!parentOptions['verbose'];
|
|
48
|
+
if (isVerbose) {
|
|
49
|
+
console.log(`🔐 Authentication Source: ${authResult.source}`);
|
|
50
|
+
if (authResult.accountName) {
|
|
51
|
+
console.log(`👤 Account: ${authResult.accountName}`);
|
|
52
|
+
}
|
|
53
|
+
console.log('');
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
authConfig: authResult.config,
|
|
57
|
+
serviceConfig,
|
|
58
|
+
isVerbose,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function parseInteger(value) {
|
|
62
|
+
if (!/^-?\d+$/.test(value)) {
|
|
63
|
+
throw new Error(`"${value}" is not a valid integer`);
|
|
64
|
+
}
|
|
65
|
+
const parsed = parseInt(value, 10);
|
|
66
|
+
if (!Number.isSafeInteger(parsed)) {
|
|
67
|
+
throw new Error(`"${value}" is outside safe integer range`);
|
|
68
|
+
}
|
|
69
|
+
return parsed;
|
|
70
|
+
}
|
|
71
|
+
function validateCouponType(value) {
|
|
72
|
+
if (!['MAX_OUT', 'DISCOUNT'].includes(value)) {
|
|
73
|
+
throw new Error('Invalid coupon type. Must be MAX_OUT or DISCOUNT');
|
|
74
|
+
}
|
|
75
|
+
return value;
|
|
76
|
+
}
|
|
77
|
+
function validateCouponStatus(value) {
|
|
78
|
+
const validStatuses = ['NOT_START', 'GOING', 'FINISHED', 'INVALID'];
|
|
79
|
+
if (!validStatuses.includes(value)) {
|
|
80
|
+
throw new Error(`Invalid coupon status. Must be one of: ${validStatuses.join(', ')}`);
|
|
81
|
+
}
|
|
82
|
+
return value;
|
|
83
|
+
}
|
|
84
|
+
function validateOutputFormat(value) {
|
|
85
|
+
if (!['table', 'json'].includes(value)) {
|
|
86
|
+
throw new Error('Invalid output format. Must be "table" or "json"');
|
|
87
|
+
}
|
|
88
|
+
return value;
|
|
89
|
+
}
|
|
90
|
+
function validateSize(value) {
|
|
91
|
+
const parsed = parseInteger(value);
|
|
92
|
+
if (parsed < 1 || parsed > PAGE_SIZE_MAX) {
|
|
93
|
+
throw new Error(`Size must be between 1 and ${PAGE_SIZE_MAX}`);
|
|
94
|
+
}
|
|
95
|
+
return parsed;
|
|
96
|
+
}
|
|
97
|
+
function registerCouponCommands(program) {
|
|
98
|
+
const couponCmd = program.command('coupon');
|
|
99
|
+
couponCmd.description('Manage coupons');
|
|
100
|
+
const addCmd = couponCmd
|
|
101
|
+
.command('add')
|
|
102
|
+
.description('Create a new coupon (满减券 or 折扣券)')
|
|
103
|
+
.requiredOption('--name <name>', `coupon name (max ${COUPON_NAME_MAX_LENGTH} characters)`)
|
|
104
|
+
.requiredOption('--type <type>', 'coupon type (MAX_OUT | DISCOUNT)', validateCouponType)
|
|
105
|
+
.requiredOption('--availableAmount <number>', 'issue quantity (>= 0)', parseInteger)
|
|
106
|
+
.requiredOption('--receiveStart <timestamp>', 'receive start time (13-bit ms timestamp)', parseInteger)
|
|
107
|
+
.requiredOption('--receiveEnd <timestamp>', 'receive end time (13-bit ms timestamp)', parseInteger)
|
|
108
|
+
.requiredOption('--useTimeType <type>', 'use time type (RANGE | DAY)')
|
|
109
|
+
.option('--useStart <timestamp>', 'use start time (required when useTimeType=RANGE)', parseInteger)
|
|
110
|
+
.option('--useEnd <timestamp>', 'use end time (required when useTimeType=RANGE)', parseInteger)
|
|
111
|
+
.option('--dayOfUse <days>', 'days available (required when useTimeType=DAY)', parseInteger)
|
|
112
|
+
.requiredOption('--condition <type>', 'rule condition (UNCONDITIONAL | FULL_REDUCE)')
|
|
113
|
+
.option('--discount <value>', 'discount value for UNCONDITIONAL rule', parseInteger)
|
|
114
|
+
.option('--full <amount>', 'minimum spend for FULL_REDUCE rule', parseInteger)
|
|
115
|
+
.option('--reduce <amount>', 'discount amount for FULL_REDUCE rule', parseInteger)
|
|
116
|
+
.requiredOption('--limitPerPerson <number>', 'max claims per person (-1 for unlimited)', parseInteger)
|
|
117
|
+
.option('-o, --output <format>', 'output format (table|json)', validateOutputFormat, 'table')
|
|
118
|
+
.action(async (options) => {
|
|
119
|
+
try {
|
|
120
|
+
const parentOptions = program.opts();
|
|
121
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
122
|
+
const couponHandler = new coupon_handler_1.CouponHandler(authConfig, serviceConfig);
|
|
123
|
+
const addOptions = {
|
|
124
|
+
name: options.name,
|
|
125
|
+
type: options.type,
|
|
126
|
+
availableAmount: options.availableAmount,
|
|
127
|
+
receiveStart: options.receiveStart,
|
|
128
|
+
receiveEnd: options.receiveEnd,
|
|
129
|
+
useTimeType: options.useTimeType,
|
|
130
|
+
useStart: options.useStart,
|
|
131
|
+
useEnd: options.useEnd,
|
|
132
|
+
dayOfUse: options.dayOfUse,
|
|
133
|
+
condition: options.condition,
|
|
134
|
+
discount: options.discount,
|
|
135
|
+
full: options.full,
|
|
136
|
+
reduce: options.reduce,
|
|
137
|
+
limitPerPerson: options.limitPerPerson,
|
|
138
|
+
output: options.output,
|
|
139
|
+
};
|
|
140
|
+
await couponHandler.addCoupon(addOptions);
|
|
141
|
+
}
|
|
142
|
+
catch (error) {
|
|
143
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
144
|
+
process.exit(1);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
addCmd.addHelpText('after', `
|
|
148
|
+
Examples:
|
|
149
|
+
# Create a MAX_OUT coupon (满减券) with FULL_REDUCE condition
|
|
150
|
+
$ polyv-cli coupon add --name "满100减20" --type MAX_OUT --availableAmount 100 \\
|
|
151
|
+
--receiveStart 1704067200000 --receiveEnd 1704153600000 \\
|
|
152
|
+
--useTimeType RANGE --useStart 1704067200000 --useEnd 1704758400000 \\
|
|
153
|
+
--condition FULL_REDUCE --full 100 --reduce 20 --limitPerPerson 1
|
|
154
|
+
|
|
155
|
+
# Create a DISCOUNT coupon (折扣券) with UNCONDITIONAL condition
|
|
156
|
+
$ polyv-cli coupon add --name "8折优惠券" --type DISCOUNT --availableAmount 200 \\
|
|
157
|
+
--receiveStart 1704067200000 --receiveEnd 1704153600000 \\
|
|
158
|
+
--useTimeType DAY --dayOfUse 7 \\
|
|
159
|
+
--condition UNCONDITIONAL --discount 80 --limitPerPerson 1
|
|
160
|
+
|
|
161
|
+
Coupon Types:
|
|
162
|
+
MAX_OUT - Fixed amount discount (满减券)
|
|
163
|
+
DISCOUNT - Percentage discount (折扣券)
|
|
164
|
+
|
|
165
|
+
Use Time Types:
|
|
166
|
+
RANGE - Specific time range (requires --useStart and --useEnd)
|
|
167
|
+
DAY - Days after receive (requires --dayOfUse)
|
|
168
|
+
|
|
169
|
+
Rule Conditions:
|
|
170
|
+
UNCONDITIONAL - No minimum spend required (use --discount)
|
|
171
|
+
FULL_REDUCE - Minimum spend required (use --full and --reduce)
|
|
172
|
+
`);
|
|
173
|
+
const listCmd = couponCmd
|
|
174
|
+
.command('list')
|
|
175
|
+
.description('List coupons with pagination and status filter')
|
|
176
|
+
.option('-p, --page <number>', 'page number (minimum 1)', parseInteger, 1)
|
|
177
|
+
.option('-s, --size <number>', 'items per page (1-1000)', validateSize, 10)
|
|
178
|
+
.option('--status <status>', 'filter by status (NOT_START|GOING|FINISHED|INVALID)', validateCouponStatus)
|
|
179
|
+
.option('-o, --output <format>', 'output format (table|json)', validateOutputFormat, 'table')
|
|
180
|
+
.action(async (options) => {
|
|
181
|
+
try {
|
|
182
|
+
const parentOptions = program.opts();
|
|
183
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
184
|
+
const couponHandler = new coupon_handler_1.CouponHandler(authConfig, serviceConfig);
|
|
185
|
+
const listOptions = {
|
|
186
|
+
page: options.page,
|
|
187
|
+
size: options.size,
|
|
188
|
+
status: options.status,
|
|
189
|
+
output: options.output,
|
|
190
|
+
};
|
|
191
|
+
await couponHandler.listCoupons(listOptions);
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
195
|
+
process.exit(1);
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
listCmd.addHelpText('after', `
|
|
199
|
+
Examples:
|
|
200
|
+
$ polyv-cli coupon list
|
|
201
|
+
$ polyv-cli coupon list -p 2 -s 20
|
|
202
|
+
$ polyv-cli coupon list --status GOING
|
|
203
|
+
$ polyv-cli coupon list -o json
|
|
204
|
+
|
|
205
|
+
Pagination:
|
|
206
|
+
--page, -p Page number (minimum 1, default 1)
|
|
207
|
+
--size, -s Items per page (1-1000, default 10)
|
|
208
|
+
|
|
209
|
+
Status Filters:
|
|
210
|
+
NOT_START - Coupons not yet started
|
|
211
|
+
GOING - Active coupons
|
|
212
|
+
FINISHED - Finished coupons
|
|
213
|
+
INVALID - Invalid/disabled coupons
|
|
214
|
+
|
|
215
|
+
Output Formats:
|
|
216
|
+
table - Formatted table output (default)
|
|
217
|
+
json - JSON format for programmatic use
|
|
218
|
+
`);
|
|
219
|
+
const deleteCmd = couponCmd
|
|
220
|
+
.command('delete')
|
|
221
|
+
.description(`Delete coupons in batch (max ${BATCH_DELETE_MAX_IDS} IDs)`)
|
|
222
|
+
.requiredOption('--couponIds <ids...>', `coupon IDs to delete (max ${BATCH_DELETE_MAX_IDS})`, (value, previous = []) => {
|
|
223
|
+
return previous.concat([value]);
|
|
224
|
+
})
|
|
225
|
+
.option('-o, --output <format>', 'output format (table|json)', validateOutputFormat, 'table')
|
|
226
|
+
.action(async (options) => {
|
|
227
|
+
try {
|
|
228
|
+
if (options.couponIds.length > BATCH_DELETE_MAX_IDS) {
|
|
229
|
+
throw new Error(`Maximum ${BATCH_DELETE_MAX_IDS} coupon IDs allowed for batch delete`);
|
|
230
|
+
}
|
|
231
|
+
const parentOptions = program.opts();
|
|
232
|
+
const { authConfig, serviceConfig } = await loadAuthAndServiceConfig(parentOptions);
|
|
233
|
+
const couponHandler = new coupon_handler_1.CouponHandler(authConfig, serviceConfig);
|
|
234
|
+
const deleteOptions = {
|
|
235
|
+
couponIds: options.couponIds,
|
|
236
|
+
output: options.output,
|
|
237
|
+
};
|
|
238
|
+
await couponHandler.deleteCoupons(deleteOptions);
|
|
239
|
+
}
|
|
240
|
+
catch (error) {
|
|
241
|
+
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
|
|
242
|
+
process.exit(1);
|
|
243
|
+
}
|
|
244
|
+
});
|
|
245
|
+
deleteCmd.addHelpText('after', `
|
|
246
|
+
Examples:
|
|
247
|
+
# Delete single coupon
|
|
248
|
+
$ polyv-cli coupon delete --couponIds coupon001
|
|
249
|
+
|
|
250
|
+
# Delete multiple coupons
|
|
251
|
+
$ polyv-cli coupon delete --couponIds coupon001 coupon002 coupon003
|
|
252
|
+
|
|
253
|
+
Notes:
|
|
254
|
+
- Maximum ${BATCH_DELETE_MAX_IDS} coupon IDs can be deleted in one batch
|
|
255
|
+
- Deletion is permanent and cannot be undone
|
|
256
|
+
`);
|
|
257
|
+
}
|
|
258
|
+
//# sourceMappingURL=coupon.commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupon.commands.js","sourceRoot":"","sources":["../../src/commands/coupon.commands.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { registerChannelCommands } from './channel.commands';
|
|
2
2
|
export { registerStreamCommands } from './stream.commands';
|
|
3
|
+
export { registerProductCommands } from './product.commands';
|
|
3
4
|
export { registerMonitorCommands } from './monitor.commands';
|
|
4
5
|
export { registerAccountCommands } from './account.commands';
|
|
5
6
|
export { registerUseCommand } from './use.commands';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/commands/index.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.registerUseCommand = exports.registerAccountCommands = exports.registerMonitorCommands = exports.registerStreamCommands = exports.registerChannelCommands = void 0;
|
|
3
|
+
exports.registerUseCommand = exports.registerAccountCommands = exports.registerMonitorCommands = exports.registerProductCommands = exports.registerStreamCommands = exports.registerChannelCommands = void 0;
|
|
4
4
|
var channel_commands_1 = require("./channel.commands");
|
|
5
5
|
Object.defineProperty(exports, "registerChannelCommands", { enumerable: true, get: function () { return channel_commands_1.registerChannelCommands; } });
|
|
6
6
|
var stream_commands_1 = require("./stream.commands");
|
|
7
7
|
Object.defineProperty(exports, "registerStreamCommands", { enumerable: true, get: function () { return stream_commands_1.registerStreamCommands; } });
|
|
8
|
+
var product_commands_1 = require("./product.commands");
|
|
9
|
+
Object.defineProperty(exports, "registerProductCommands", { enumerable: true, get: function () { return product_commands_1.registerProductCommands; } });
|
|
8
10
|
var monitor_commands_1 = require("./monitor.commands");
|
|
9
11
|
Object.defineProperty(exports, "registerMonitorCommands", { enumerable: true, get: function () { return monitor_commands_1.registerMonitorCommands; } });
|
|
10
12
|
var account_commands_1 = require("./account.commands");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;AAOA,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,qDAA2D;AAAlD,yHAAA,sBAAsB,OAAA;AAG/B,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;AAOA,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,qDAA2D;AAAlD,yHAAA,sBAAsB,OAAA;AAG/B,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
export declare function parseInteger(value: string): number;
|
|
3
|
+
export declare function validateSize(value: string): number;
|
|
4
|
+
export declare function validateOutputFormat(value: string): 'table' | 'json';
|
|
5
|
+
export declare function validateProductType(value: string): 'normal' | 'finance' | 'position';
|
|
6
|
+
export declare function validateProductStatus(value: string): 1 | 2;
|
|
7
|
+
export declare function validateLinkType(value: string): 10 | 11;
|
|
8
|
+
export declare function validatePrice(value: string): number;
|
|
9
|
+
export declare function registerProductCommands(program: Command): void;
|
|
10
|
+
//# sourceMappingURL=product.commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product.commands.d.ts","sourceRoot":"","sources":["../../src/commands/product.commands.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA4FpC,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMlD;AAQD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMlD;AAQD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAKpE;AAQD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAMpF;AAQD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,CAM1D;AAQD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,GAAG,EAAE,CAMvD;AAQD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASnD;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4T9D"}
|