@optima-chat/commerce-cli 1.8.0 → 1.9.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 (66) hide show
  1. package/.claude/skills/commerce-review/SKILL.md +196 -0
  2. package/dist/api/rest/commerce.d.ts +117 -1
  3. package/dist/api/rest/commerce.d.ts.map +1 -1
  4. package/dist/api/rest/commerce.js +76 -0
  5. package/dist/api/rest/commerce.js.map +1 -1
  6. package/dist/commands/review/approve.d.ts +3 -0
  7. package/dist/commands/review/approve.d.ts.map +1 -0
  8. package/dist/commands/review/approve.js +73 -0
  9. package/dist/commands/review/approve.js.map +1 -0
  10. package/dist/commands/review/batch.d.ts +3 -0
  11. package/dist/commands/review/batch.d.ts.map +1 -0
  12. package/dist/commands/review/batch.js +120 -0
  13. package/dist/commands/review/batch.js.map +1 -0
  14. package/dist/commands/review/delete-response.d.ts +3 -0
  15. package/dist/commands/review/delete-response.d.ts.map +1 -0
  16. package/dist/commands/review/delete-response.js +91 -0
  17. package/dist/commands/review/delete-response.js.map +1 -0
  18. package/dist/commands/review/delete.d.ts +3 -0
  19. package/dist/commands/review/delete.d.ts.map +1 -0
  20. package/dist/commands/review/delete.js +93 -0
  21. package/dist/commands/review/delete.js.map +1 -0
  22. package/dist/commands/review/feature.d.ts +3 -0
  23. package/dist/commands/review/feature.d.ts.map +1 -0
  24. package/dist/commands/review/feature.js +89 -0
  25. package/dist/commands/review/feature.js.map +1 -0
  26. package/dist/commands/review/get.d.ts +3 -0
  27. package/dist/commands/review/get.d.ts.map +1 -0
  28. package/dist/commands/review/get.js +79 -0
  29. package/dist/commands/review/get.js.map +1 -0
  30. package/dist/commands/review/handle-report.d.ts +3 -0
  31. package/dist/commands/review/handle-report.d.ts.map +1 -0
  32. package/dist/commands/review/handle-report.js +85 -0
  33. package/dist/commands/review/handle-report.js.map +1 -0
  34. package/dist/commands/review/index.d.ts +3 -0
  35. package/dist/commands/review/index.d.ts.map +1 -0
  36. package/dist/commands/review/index.js +28 -0
  37. package/dist/commands/review/index.js.map +1 -0
  38. package/dist/commands/review/list.d.ts +3 -0
  39. package/dist/commands/review/list.d.ts.map +1 -0
  40. package/dist/commands/review/list.js +144 -0
  41. package/dist/commands/review/list.js.map +1 -0
  42. package/dist/commands/review/reject.d.ts +3 -0
  43. package/dist/commands/review/reject.d.ts.map +1 -0
  44. package/dist/commands/review/reject.js +73 -0
  45. package/dist/commands/review/reject.js.map +1 -0
  46. package/dist/commands/review/reports.d.ts +3 -0
  47. package/dist/commands/review/reports.d.ts.map +1 -0
  48. package/dist/commands/review/reports.js +90 -0
  49. package/dist/commands/review/reports.js.map +1 -0
  50. package/dist/commands/review/respond.d.ts +3 -0
  51. package/dist/commands/review/respond.d.ts.map +1 -0
  52. package/dist/commands/review/respond.js +106 -0
  53. package/dist/commands/review/respond.js.map +1 -0
  54. package/dist/commands/review/stats.d.ts +3 -0
  55. package/dist/commands/review/stats.d.ts.map +1 -0
  56. package/dist/commands/review/stats.js +71 -0
  57. package/dist/commands/review/stats.js.map +1 -0
  58. package/dist/index.js +2 -0
  59. package/dist/index.js.map +1 -1
  60. package/dist/utils/config.js +1 -1
  61. package/dist/utils/config.js.map +1 -1
  62. package/dist/utils/format.d.ts +28 -0
  63. package/dist/utils/format.d.ts.map +1 -1
  64. package/dist/utils/format.js +186 -0
  65. package/dist/utils/format.js.map +1 -1
  66. package/package.json +1 -1
@@ -0,0 +1,90 @@
1
+ import { Command, Option } from 'commander';
2
+ import chalk from 'chalk';
3
+ import { commerceApi } from '../../api/rest/commerce.js';
4
+ import { handleError, createApiError } from '../../utils/error.js';
5
+ import { formatReportList } from '../../utils/format.js';
6
+ import { output } from '../../utils/output.js';
7
+ import { addEnhancedHelp } from '../../utils/helpText.js';
8
+ const cmd = new Command('reports')
9
+ .description('List review reports')
10
+ .addOption(new Option('-s, --status <status>', 'Filter by status')
11
+ .choices(['pending', 'reviewed', 'dismissed']))
12
+ .action(async (options) => {
13
+ try {
14
+ await listReports(options);
15
+ }
16
+ catch (error) {
17
+ handleError(error);
18
+ }
19
+ });
20
+ addEnhancedHelp(cmd, {
21
+ examples: [
22
+ '# List all reports',
23
+ '$ commerce review reports',
24
+ '',
25
+ '# Filter by pending status',
26
+ '$ commerce review reports --status pending',
27
+ ],
28
+ output: {
29
+ example: JSON.stringify({
30
+ success: true,
31
+ data: {
32
+ reports: [
33
+ {
34
+ id: 'report-uuid',
35
+ review_id: 'review-uuid',
36
+ reason: 'inappropriate',
37
+ description: 'Contains offensive language',
38
+ status: 'pending',
39
+ created_at: '2025-12-21T10:00:00Z',
40
+ },
41
+ ],
42
+ total: 1,
43
+ },
44
+ }, null, 2),
45
+ },
46
+ relatedCommands: [
47
+ { command: 'review handle-report', description: 'Process a report' },
48
+ { command: 'review get', description: 'View the reported review' },
49
+ { command: 'review delete', description: 'Delete reported review' },
50
+ ],
51
+ notes: [
52
+ 'Reports are submitted by customers for inappropriate content',
53
+ 'Use handle-report to mark reports as reviewed or dismissed',
54
+ 'Report reasons: fake, inappropriate, spam, other',
55
+ ],
56
+ });
57
+ export const reportsCommand = cmd;
58
+ async function listReports(options) {
59
+ const spinner = output.spinner('Fetching reports...');
60
+ try {
61
+ const params = {};
62
+ if (options.status) {
63
+ params.status = options.status;
64
+ }
65
+ const result = await commerceApi.reviews.listReports(params);
66
+ spinner.succeed('Reports fetched');
67
+ const reports = result.reports || [];
68
+ const total = result.total || 0;
69
+ if (output.isJson()) {
70
+ output.success({ reports, total }, `Retrieved ${reports.length} reports`);
71
+ }
72
+ else {
73
+ console.log();
74
+ console.log(chalk.cyan(`Found ${total} reports`));
75
+ console.log();
76
+ if (reports.length === 0) {
77
+ console.log(chalk.yellow('No reports found'));
78
+ }
79
+ else {
80
+ console.log(formatReportList(reports));
81
+ }
82
+ console.log();
83
+ }
84
+ }
85
+ catch (error) {
86
+ spinner.fail('Failed to fetch reports');
87
+ throw createApiError(error);
88
+ }
89
+ }
90
+ //# sourceMappingURL=reports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reports.js","sourceRoot":"","sources":["../../../src/commands/review/reports.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const respondCommand: Command;
3
+ //# sourceMappingURL=respond.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"respond.d.ts","sourceRoot":"","sources":["../../../src/commands/review/respond.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyDpC,eAAO,MAAM,cAAc,SAAM,CAAC"}
@@ -0,0 +1,106 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import inquirer from 'inquirer';
4
+ import { commerceApi } from '../../api/rest/commerce.js';
5
+ import { handleError, createApiError, ValidationError } from '../../utils/error.js';
6
+ import { output } from '../../utils/output.js';
7
+ import { addEnhancedHelp } from '../../utils/helpText.js';
8
+ import { isInteractiveEnvironment, requireParam } from '../../utils/interactive.js';
9
+ const cmd = new Command('respond')
10
+ .description('Add or update merchant response to a review')
11
+ .option('--id <uuid>', 'Review ID (required)')
12
+ .option('--content <text>', 'Response content (required)')
13
+ .action(async (options) => {
14
+ try {
15
+ await respondToReview(options);
16
+ }
17
+ catch (error) {
18
+ handleError(error);
19
+ }
20
+ });
21
+ addEnhancedHelp(cmd, {
22
+ examples: [
23
+ '# Reply to a review',
24
+ '$ commerce review respond --id abc-123-def --content "Thank you for your feedback!"',
25
+ '',
26
+ '# Interactive mode (prompt for content)',
27
+ '$ commerce review respond --id abc-123-def',
28
+ ],
29
+ output: {
30
+ example: JSON.stringify({
31
+ success: true,
32
+ data: {
33
+ review_id: 'abc-123-def',
34
+ merchant_response: 'Thank you for your feedback!',
35
+ merchant_response_at: '2025-12-21T12:00:00Z',
36
+ },
37
+ message: 'Response added',
38
+ }, null, 2),
39
+ },
40
+ relatedCommands: [
41
+ { command: 'review get', description: 'View review details' },
42
+ { command: 'review delete-response', description: 'Delete your response' },
43
+ { command: 'review list', description: 'Find reviews to respond to' },
44
+ ],
45
+ notes: [
46
+ 'You can only have one response per review',
47
+ 'Responding again will update the existing response',
48
+ 'Maximum 1000 characters',
49
+ ],
50
+ });
51
+ export const respondCommand = cmd;
52
+ async function respondToReview(options) {
53
+ const reviewId = isInteractiveEnvironment()
54
+ ? (options.id?.trim() || (() => { throw new ValidationError('Review ID is required', 'id'); })())
55
+ : requireParam(options.id, 'id', 'Review ID');
56
+ let content = options.content;
57
+ // Interactive prompt for content if not provided
58
+ if (!content && isInteractiveEnvironment()) {
59
+ const answers = await inquirer.prompt([
60
+ {
61
+ type: 'editor',
62
+ name: 'content',
63
+ message: 'Enter your response (max 1000 characters):',
64
+ validate: (input) => {
65
+ if (!input || input.trim().length === 0) {
66
+ return 'Response content is required';
67
+ }
68
+ if (input.length > 1000) {
69
+ return 'Response must be 1000 characters or less';
70
+ }
71
+ return true;
72
+ },
73
+ },
74
+ ]);
75
+ content = answers.content;
76
+ }
77
+ if (!content || content.trim().length === 0) {
78
+ throw new ValidationError('Response content is required (--content)', 'content');
79
+ }
80
+ if (content.length > 1000) {
81
+ throw new ValidationError('Response must be 1000 characters or less', 'content');
82
+ }
83
+ const spinner = output.spinner('Adding response...');
84
+ try {
85
+ const review = await commerceApi.reviews.respond(reviewId, content);
86
+ spinner.succeed('Response added');
87
+ if (output.isJson()) {
88
+ output.success({
89
+ review_id: review.id,
90
+ merchant_response: review.merchant_response,
91
+ merchant_response_at: review.merchant_response_at,
92
+ }, 'Response added');
93
+ }
94
+ else {
95
+ console.log();
96
+ console.log(chalk.green('Response added successfully'));
97
+ console.log(chalk.gray('Review ID: ') + chalk.white(review.id));
98
+ console.log();
99
+ }
100
+ }
101
+ catch (error) {
102
+ spinner.fail('Failed to add response');
103
+ throw createApiError(error);
104
+ }
105
+ }
106
+ //# sourceMappingURL=respond.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"respond.js","sourceRoot":"","sources":["../../../src/commands/review/respond.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const statsCommand: Command;
3
+ //# sourceMappingURL=stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../src/commands/review/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqDpC,eAAO,MAAM,YAAY,SAAM,CAAC"}
@@ -0,0 +1,71 @@
1
+ import { Command } from 'commander';
2
+ import { commerceApi } from '../../api/rest/commerce.js';
3
+ import { handleError, createApiError } from '../../utils/error.js';
4
+ import { formatReviewStats } from '../../utils/format.js';
5
+ import { output } from '../../utils/output.js';
6
+ import { addEnhancedHelp } from '../../utils/helpText.js';
7
+ const cmd = new Command('stats')
8
+ .description('Get shop review statistics')
9
+ .action(async () => {
10
+ try {
11
+ await getReviewStats();
12
+ }
13
+ catch (error) {
14
+ handleError(error);
15
+ }
16
+ });
17
+ addEnhancedHelp(cmd, {
18
+ examples: [
19
+ '# Get review statistics',
20
+ '$ commerce review stats',
21
+ ],
22
+ output: {
23
+ example: JSON.stringify({
24
+ success: true,
25
+ data: {
26
+ total_reviews: 150,
27
+ average_rating: 4.5,
28
+ rating_distribution: {
29
+ '5': 80,
30
+ '4': 40,
31
+ '3': 20,
32
+ '2': 5,
33
+ '1': 5,
34
+ },
35
+ with_media_count: 30,
36
+ with_reply_count: 45,
37
+ featured_count: 10,
38
+ verified_count: 120,
39
+ },
40
+ message: 'Review statistics retrieved',
41
+ }, null, 2),
42
+ },
43
+ relatedCommands: [
44
+ { command: 'review list', description: 'View all reviews' },
45
+ { command: 'review list --status pending', description: 'View pending reviews' },
46
+ ],
47
+ notes: [
48
+ 'Shows overall review metrics for your store',
49
+ 'Rating distribution shows count for each star level',
50
+ ],
51
+ });
52
+ export const statsCommand = cmd;
53
+ async function getReviewStats() {
54
+ const spinner = output.spinner('Fetching review statistics...');
55
+ try {
56
+ const stats = await commerceApi.reviews.stats();
57
+ spinner.succeed('Statistics retrieved');
58
+ if (output.isJson()) {
59
+ output.success(stats, 'Review statistics retrieved');
60
+ }
61
+ else {
62
+ console.log();
63
+ console.log(formatReviewStats(stats));
64
+ }
65
+ }
66
+ catch (error) {
67
+ spinner.fail('Failed to fetch statistics');
68
+ throw createApiError(error);
69
+ }
70
+ }
71
+ //# sourceMappingURL=stats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.js","sourceRoot":"","sources":["../../../src/commands/review/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;KAC7B,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,eAAe,CAAC,GAAG,EAAE;IACnB,QAAQ,EAAE;QACR,yBAAyB;QACzB,yBAAyB;KAC1B;IACD,MAAM,EAAE;QACN,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;YACtB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE;gBACJ,aAAa,EAAE,GAAG;gBAClB,cAAc,EAAE,GAAG;gBACnB,mBAAmB,EAAE;oBACnB,GAAG,EAAE,EAAE;oBACP,GAAG,EAAE,EAAE;oBACP,GAAG,EAAE,EAAE;oBACP,GAAG,EAAE,CAAC;oBACN,GAAG,EAAE,CAAC;iBACP;gBACD,gBAAgB,EAAE,EAAE;gBACpB,gBAAgB,EAAE,EAAE;gBACpB,cAAc,EAAE,EAAE;gBAClB,cAAc,EAAE,GAAG;aACpB;YACD,OAAO,EAAE,6BAA6B;SACvC,EAAE,IAAI,EAAE,CAAC,CAAC;KACZ;IACD,eAAe,EAAE;QACf,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,kBAAkB,EAAE;QAC3D,EAAE,OAAO,EAAE,8BAA8B,EAAE,WAAW,EAAE,sBAAsB,EAAE;KACjF;IACD,KAAK,EAAE;QACL,6CAA6C;QAC7C,qDAAqD;KACtD;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC;AAEhC,KAAK,UAAU,cAAc;IAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAChD,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAExC,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,6BAA6B,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC3C,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC"}
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ import collection from './commands/collection/index.js';
23
23
  import { testCommand } from './commands/test/index.js';
24
24
  import { productPageCommand } from './commands/product-page/index.js';
25
25
  import { easyshipCommand } from './commands/easyship/index.js';
26
+ import { reviewCommand } from './commands/review/index.js';
26
27
  import { output } from './utils/output.js';
27
28
  const __filename = fileURLToPath(import.meta.url);
28
29
  const __dirname = dirname(__filename);
@@ -108,6 +109,7 @@ program.addCommand(homepage);
108
109
  program.addCommand(collection);
109
110
  program.addCommand(productPageCommand);
110
111
  program.addCommand(easyshipCommand);
112
+ program.addCommand(reviewCommand);
111
113
  program
112
114
  .command('version')
113
115
  .description('显示版本信息')
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export const ENV_CONFIG = {
6
6
  production: {
7
7
  authUrl: 'https://auth.optima.onl',
8
8
  apiUrl: 'https://api.optima.onl',
9
- storeDomain: 'optima.onl',
9
+ storeDomain: 'optima.shop',
10
10
  clientId: 'commerce-cli-ecs-pro-i2r5of1h',
11
11
  },
12
12
  stage: {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
@@ -74,4 +74,32 @@ export declare function formatVariantList(variants: any[]): string;
74
74
  * 格式化变体详情
75
75
  */
76
76
  export declare function formatVariant(variant: any): string;
77
+ /**
78
+ * 格式化评价审核状态
79
+ */
80
+ export declare function formatReviewStatus(status: string): string;
81
+ /**
82
+ * 格式化举报状态
83
+ */
84
+ export declare function formatReportStatus(status: string): string;
85
+ /**
86
+ * 格式化评分星级
87
+ */
88
+ export declare function formatRating(rating: number): string;
89
+ /**
90
+ * 格式化评价列表
91
+ */
92
+ export declare function formatReviewList(reviews: any[]): string;
93
+ /**
94
+ * 格式化评价详情
95
+ */
96
+ export declare function formatReview(review: any): string;
97
+ /**
98
+ * 格式化评价统计
99
+ */
100
+ export declare function formatReviewStats(stats: any): string;
101
+ /**
102
+ * 格式化举报列表
103
+ */
104
+ export declare function formatReportList(reports: any[]): string;
77
105
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAGzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,GAAE,MAAc,GAAG,MAAM,CAGpF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,MAAM,CAGlE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAU,GAAG,MAAM,CAQtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,MAAM,CA8BzD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CAyClD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CA8BrD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAiE9C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,CA6BxD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,MAAM,CA4B5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,GAAG,GAAG,MAAM,CAyBpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,MAAM,CAoCzD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CA2ClD"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAGzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,GAAE,MAAc,GAAG,MAAM,CAGpF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,MAAM,CAGlE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAU,GAAG,MAAM,CAQtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,MAAM,CA8BzD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CAyClD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CA8BrD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAiE9C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,CA6BxD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,MAAM,CA4B5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,GAAG,GAAG,MAAM,CAyBpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,MAAM,CAoCzD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CA2ClD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQzD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQzD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,CAgCvD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,CAqEhD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAkCpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,CA4BvD"}
@@ -403,4 +403,190 @@ export function formatVariant(variant) {
403
403
  lines.push(separator);
404
404
  return lines.join('\n');
405
405
  }
406
+ /**
407
+ * 格式化评价审核状态
408
+ */
409
+ export function formatReviewStatus(status) {
410
+ const statusMap = {
411
+ pending: { text: '待审核', color: chalk.yellow },
412
+ approved: { text: '已批准', color: chalk.green },
413
+ rejected: { text: '已拒绝', color: chalk.red },
414
+ };
415
+ const config = statusMap[status] || { text: status, color: chalk.white };
416
+ return config.color(config.text);
417
+ }
418
+ /**
419
+ * 格式化举报状态
420
+ */
421
+ export function formatReportStatus(status) {
422
+ const statusMap = {
423
+ pending: { text: '待处理', color: chalk.yellow },
424
+ reviewed: { text: '已审核', color: chalk.green },
425
+ dismissed: { text: '已驳回', color: chalk.gray },
426
+ };
427
+ const config = statusMap[status] || { text: status, color: chalk.white };
428
+ return config.color(config.text);
429
+ }
430
+ /**
431
+ * 格式化评分星级
432
+ */
433
+ export function formatRating(rating) {
434
+ const stars = '★'.repeat(rating) + '☆'.repeat(5 - rating);
435
+ return chalk.yellow(stars);
436
+ }
437
+ /**
438
+ * 格式化评价列表
439
+ */
440
+ export function formatReviewList(reviews) {
441
+ if (!reviews || reviews.length === 0) {
442
+ return chalk.yellow('暂无评价');
443
+ }
444
+ const table = new Table({
445
+ head: [
446
+ chalk.cyan('ID'),
447
+ chalk.cyan('评分'),
448
+ chalk.cyan('评价者'),
449
+ chalk.cyan('商品'),
450
+ chalk.cyan('状态'),
451
+ chalk.cyan('精选'),
452
+ chalk.cyan('时间'),
453
+ ],
454
+ colWidths: [14, 12, 18, 25, 10, 8, 18],
455
+ wordWrap: true,
456
+ });
457
+ reviews.forEach((review) => {
458
+ table.push([
459
+ truncateId(review.id, 12),
460
+ formatRating(review.rating || 0),
461
+ review.reviewer_name || review.customer_name || '-',
462
+ (review.product_name || '-').substring(0, 22) + (review.product_name?.length > 22 ? '...' : ''),
463
+ formatReviewStatus(review.moderation_status || 'pending'),
464
+ review.is_featured ? chalk.green('是') : chalk.gray('否'),
465
+ formatDate(review.created_at),
466
+ ]);
467
+ });
468
+ return table.toString();
469
+ }
470
+ /**
471
+ * 格式化评价详情
472
+ */
473
+ export function formatReview(review) {
474
+ const lines = [];
475
+ const separator = chalk.gray('─'.repeat(60));
476
+ lines.push(separator);
477
+ lines.push(chalk.cyan.bold('评价详情'));
478
+ lines.push(separator);
479
+ lines.push(`${chalk.gray('ID:')} ${review.id}`);
480
+ lines.push(`${chalk.gray('评分:')} ${formatRating(review.rating || 0)} (${review.rating}/5)`);
481
+ lines.push(`${chalk.gray('状态:')} ${formatReviewStatus(review.moderation_status || 'pending')}`);
482
+ if (review.title) {
483
+ lines.push(`${chalk.gray('标题:')} ${review.title}`);
484
+ }
485
+ if (review.content) {
486
+ lines.push(`${chalk.gray('内容:')} ${review.content}`);
487
+ }
488
+ lines.push('');
489
+ lines.push(chalk.gray('评价者信息'));
490
+ if (review.reviewer_name || review.customer_name) {
491
+ lines.push(`${chalk.gray('姓名:')} ${review.reviewer_name || review.customer_name}`);
492
+ }
493
+ if (review.reviewer_email) {
494
+ lines.push(`${chalk.gray('邮箱:')} ${review.reviewer_email}`);
495
+ }
496
+ if (review.is_verified_purchase) {
497
+ lines.push(`${chalk.gray('已验证购买:')} ${chalk.green('是')}`);
498
+ }
499
+ lines.push('');
500
+ lines.push(chalk.gray('商品信息'));
501
+ if (review.product_id) {
502
+ lines.push(`${chalk.gray('商品 ID:')} ${review.product_id}`);
503
+ }
504
+ if (review.product_name) {
505
+ lines.push(`${chalk.gray('商品名称:')} ${review.product_name}`);
506
+ }
507
+ lines.push('');
508
+ lines.push(chalk.gray('互动数据'));
509
+ lines.push(`${chalk.gray('有用:')} ${review.helpful_count || 0}`);
510
+ lines.push(`${chalk.gray('无用:')} ${review.not_helpful_count || 0}`);
511
+ lines.push(`${chalk.gray('精选:')} ${review.is_featured ? chalk.green('是') : chalk.gray('否')}`);
512
+ if (review.media_ids && review.media_ids.length > 0) {
513
+ lines.push(`${chalk.gray('媒体数量:')} ${review.media_ids.length}`);
514
+ }
515
+ if (review.merchant_response) {
516
+ lines.push('');
517
+ lines.push(chalk.cyan('商家回复'));
518
+ lines.push(`${chalk.gray('内容:')} ${review.merchant_response}`);
519
+ if (review.merchant_response_at) {
520
+ lines.push(`${chalk.gray('回复时间:')} ${formatDate(review.merchant_response_at)}`);
521
+ }
522
+ }
523
+ lines.push('');
524
+ lines.push(`${chalk.gray('创建时间:')} ${formatDate(review.created_at)}`);
525
+ if (review.is_edited) {
526
+ lines.push(`${chalk.gray('编辑时间:')} ${formatDate(review.edited_at)}`);
527
+ }
528
+ lines.push(separator);
529
+ return lines.join('\n');
530
+ }
531
+ /**
532
+ * 格式化评价统计
533
+ */
534
+ export function formatReviewStats(stats) {
535
+ const lines = [];
536
+ const separator = chalk.gray('─'.repeat(60));
537
+ lines.push(separator);
538
+ lines.push(chalk.cyan.bold('评价统计'));
539
+ lines.push(separator);
540
+ lines.push(`${chalk.gray('总评价数:')} ${stats.total_reviews || 0}`);
541
+ lines.push(`${chalk.gray('平均评分:')} ${formatRating(Math.round(stats.average_rating || 0))} (${(stats.average_rating || 0).toFixed(1)})`);
542
+ if (stats.rating_distribution) {
543
+ lines.push('');
544
+ lines.push(chalk.gray('评分分布:'));
545
+ for (let i = 5; i >= 1; i--) {
546
+ const count = stats.rating_distribution[i] || 0;
547
+ const total = stats.total_reviews || 1;
548
+ const percent = ((count / total) * 100).toFixed(1);
549
+ const bar = '█'.repeat(Math.round(count / total * 20));
550
+ lines.push(` ${chalk.yellow('★'.repeat(i) + '☆'.repeat(5 - i))} ${chalk.gray(bar.padEnd(20))} ${count} (${percent}%)`);
551
+ }
552
+ }
553
+ lines.push('');
554
+ lines.push(`${chalk.gray('带媒体:')} ${stats.with_media_count || 0}`);
555
+ lines.push(`${chalk.gray('已回复:')} ${stats.with_reply_count || 0}`);
556
+ lines.push(`${chalk.gray('精选数:')} ${stats.featured_count || 0}`);
557
+ if (stats.verified_count !== undefined) {
558
+ lines.push(`${chalk.gray('已验证购买:')} ${stats.verified_count}`);
559
+ }
560
+ lines.push(separator);
561
+ return lines.join('\n');
562
+ }
563
+ /**
564
+ * 格式化举报列表
565
+ */
566
+ export function formatReportList(reports) {
567
+ if (!reports || reports.length === 0) {
568
+ return chalk.yellow('暂无举报');
569
+ }
570
+ const table = new Table({
571
+ head: [
572
+ chalk.cyan('举报 ID'),
573
+ chalk.cyan('评价 ID'),
574
+ chalk.cyan('原因'),
575
+ chalk.cyan('状态'),
576
+ chalk.cyan('时间'),
577
+ ],
578
+ colWidths: [14, 14, 25, 12, 18],
579
+ wordWrap: true,
580
+ });
581
+ reports.forEach((report) => {
582
+ table.push([
583
+ truncateId(report.id, 12),
584
+ truncateId(report.review_id, 12),
585
+ report.reason || '-',
586
+ formatReportStatus(report.status || 'pending'),
587
+ formatDate(report.created_at),
588
+ ]);
589
+ });
590
+ return table.toString();
591
+ }
406
592
  //# sourceMappingURL=format.js.map