@clauderecallhq/cli 0.12.0 → 0.12.5

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.
@@ -1,128 +0,0 @@
1
- import { c } from '../utils/format.js';
2
- const NPM_PACKAGE = '@clauderecallhq/cli';
3
- const VSCODE_EXTENSION = 'clauderecallhq.clauderecall-vscode';
4
- const SPARK_CHARS = '▁▂▃▄▅▆▇█';
5
- function sparkline(values) {
6
- if (values.length === 0)
7
- return '';
8
- const min = Math.min(...values);
9
- const max = Math.max(...values);
10
- const range = max - min || 1;
11
- return values
12
- .map((v) => SPARK_CHARS[Math.round(((v - min) / range) * (SPARK_CHARS.length - 1))])
13
- .join('');
14
- }
15
- async function fetchJson(url, init) {
16
- const res = await fetch(url, init);
17
- if (!res.ok) {
18
- throw new Error(`HTTP ${res.status} ${res.statusText}`);
19
- }
20
- return (await res.json());
21
- }
22
- async function fetchNpm() {
23
- const [weekly, monthly, range] = await Promise.all([
24
- fetchJson(`https://api.npmjs.org/downloads/point/last-week/${encodeURIComponent(NPM_PACKAGE)}`),
25
- fetchJson(`https://api.npmjs.org/downloads/point/last-month/${encodeURIComponent(NPM_PACKAGE)}`),
26
- fetchJson(`https://api.npmjs.org/downloads/range/last-month/${encodeURIComponent(NPM_PACKAGE)}`),
27
- ]);
28
- return {
29
- lastWeek: weekly.downloads,
30
- lastMonth: monthly.downloads,
31
- dailyDownloads: range.downloads.map((d) => d.downloads),
32
- dailyDays: range.downloads.map((d) => d.day),
33
- };
34
- }
35
- async function fetchVsCode() {
36
- const body = {
37
- filters: [
38
- {
39
- criteria: [{ filterType: 7, value: VSCODE_EXTENSION }],
40
- },
41
- ],
42
- assetTypes: [],
43
- flags: 914,
44
- };
45
- const data = await fetchJson('https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery', {
46
- method: 'POST',
47
- headers: {
48
- 'Content-Type': 'application/json',
49
- Accept: 'application/json;api-version=6.0-preview.1',
50
- },
51
- body: JSON.stringify(body),
52
- });
53
- const stats = data.results?.[0]?.extensions?.[0]?.statistics ?? [];
54
- const stat = (name) => {
55
- const entry = stats.find((s) => s.statisticName === name);
56
- return entry ? entry.value : null;
57
- };
58
- return {
59
- totalInstalls: stat('install') ?? 0,
60
- totalDownloads: stat('updateCount') ?? stat('install') ?? 0,
61
- averageRating: stat('averagerating'),
62
- ratingCount: stat('ratingcount'),
63
- };
64
- }
65
- function printFormatted(result) {
66
- const { npm, vscode } = result;
67
- process.stdout.write('\n');
68
- process.stdout.write(c.bold('product installs') + '\n');
69
- // --- npm section ---
70
- process.stdout.write('\n');
71
- process.stdout.write(c.accent(`npm`) + c.dim(` · ${NPM_PACKAGE}`) + '\n');
72
- process.stdout.write(c.dim('─'.repeat(28)) + '\n');
73
- if (npm) {
74
- process.stdout.write(` last 7 days ${c.accent(String(npm.lastWeek))}\n`);
75
- process.stdout.write(` last 30 days ${c.accent(String(npm.lastMonth))}\n`);
76
- const tail = npm.dailyDownloads.slice(-8);
77
- if (tail.length > 0) {
78
- process.stdout.write(` daily trend ${sparkline(tail)} ${c.dim('(last 8 days)')}\n`);
79
- }
80
- }
81
- else {
82
- process.stdout.write(c.warn(` failed: ${result.npmError ?? 'unknown error'}`) + '\n');
83
- }
84
- // --- VS Code section ---
85
- process.stdout.write('\n');
86
- process.stdout.write(c.accent(`VS Code`) + c.dim(` · clauderecall-vscode`) + '\n');
87
- process.stdout.write(c.dim('─'.repeat(28)) + '\n');
88
- if (vscode) {
89
- process.stdout.write(` total installs ${c.accent(String(vscode.totalInstalls))}\n`);
90
- process.stdout.write(` total downloads ${c.accent(String(vscode.totalDownloads))}\n`);
91
- }
92
- else {
93
- process.stdout.write(c.warn(` failed: ${result.vscodeError ?? 'unknown error'}`) + '\n');
94
- }
95
- process.stdout.write('\n');
96
- process.stdout.write(c.dim(`fetched ${result.fetchedAt}`) + '\n');
97
- process.stdout.write('\n');
98
- }
99
- export async function runInstalls(opts) {
100
- const result = {
101
- fetchedAt: new Date().toISOString(),
102
- npm: null,
103
- vscode: null,
104
- };
105
- const [npmResult, vscodeResult] = await Promise.allSettled([fetchNpm(), fetchVsCode()]);
106
- if (npmResult.status === 'fulfilled') {
107
- result.npm = npmResult.value;
108
- }
109
- else {
110
- result.npmError =
111
- npmResult.reason instanceof Error ? npmResult.reason.message : String(npmResult.reason);
112
- }
113
- if (vscodeResult.status === 'fulfilled') {
114
- result.vscode = vscodeResult.value;
115
- }
116
- else {
117
- result.vscodeError =
118
- vscodeResult.reason instanceof Error
119
- ? vscodeResult.reason.message
120
- : String(vscodeResult.reason);
121
- }
122
- if (opts.json) {
123
- process.stdout.write(JSON.stringify(result, null, 2) + '\n');
124
- return;
125
- }
126
- printFormatted(result);
127
- }
128
- //# sourceMappingURL=installs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"installs.js","sourceRoot":"","sources":["../../src/commands/installs.ts"],"names":[],"mappings":"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"}