vibetracking 0.1.0 → 0.2.1

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/cli.js CHANGED
@@ -11,10 +11,8 @@ const pkg = require("../package.json");
11
11
  import pc from "picocolors";
12
12
  import open from "open";
13
13
  import pako from "pako";
14
- import { getApiBaseUrl, loadCredentials } from "./credentials.js";
15
- import { login, logout, whoami } from "./auth.js";
16
14
  import { loadCursorCredentials, saveCursorCredentials, clearCursorCredentials, validateCursorSession, readCursorUsage, getCursorCredentialsPath, syncCursorCache, isCursorLoggedIn, isCursorInstalled, } from "./cursor.js";
17
- import { parseLocalSourcesAsync, finalizeGraphAsync, } from "./native.js";
15
+ import { initNativeModule, parseLocalSourcesAsync, finalizeGraphAsync, } from "./native.js";
18
16
  import { createSpinner } from "./spinner.js";
19
17
  // =============================================================================
20
18
  // Helpers
@@ -25,6 +23,9 @@ function formatNumber(num) {
25
23
  function formatCurrency(amount) {
26
24
  return `$${amount.toFixed(2)}`;
27
25
  }
26
+ function getApiBaseUrl() {
27
+ return process.env.VIBETRACKING_API_URL || "https://vibetracking.dev";
28
+ }
28
29
  // =============================================================================
29
30
  // Data Encoding for Browser Import
30
31
  // =============================================================================
@@ -43,30 +44,10 @@ async function main() {
43
44
  program
44
45
  .name("vibetracking")
45
46
  .description("Vibetracking - Track AI coding costs across Claude Code, Codex, Cursor, and more")
46
- .version(pkg.version);
47
- // Default command: sync if authenticated, else open browser
48
- program
49
- .command("default", { isDefault: true, hidden: true })
50
- .action(async () => {
51
- const credentials = loadCredentials();
52
- if (credentials) {
53
- await syncAndPrintProfile(credentials);
54
- }
55
- else {
56
- await openBrowserWithData();
57
- }
58
- });
59
- // Authentication commands
60
- program.command("login").description("Login to vibetracking.dev").action(login);
61
- program.command("logout").description("Logout from vibetracking.dev").action(logout);
62
- program.command("whoami").description("Show current user").action(whoami);
63
- // Sync command for cron jobs
64
- program
65
- .command("sync")
66
- .description("Sync usage data to vibetracking.dev (for cron jobs)")
67
- .option("--quiet", "No output on success")
47
+ .version(pkg.version)
48
+ .option("-i, --inviter <username>", "Accept a challenge from a user (e.g., @username)")
68
49
  .action(async (options) => {
69
- await handleSyncCommand(options);
50
+ await openBrowserWithData(options.inviter);
70
51
  });
71
52
  // Cursor IDE integration
72
53
  const cursorCommand = program
@@ -92,40 +73,6 @@ async function main() {
92
73
  });
93
74
  await program.parseAsync();
94
75
  }
95
- // =============================================================================
96
- // Default Command: Sync if authenticated, else open browser
97
- // =============================================================================
98
- async function syncAndPrintProfile(credentials) {
99
- const spinner = createSpinner({ color: "cyan" });
100
- spinner.start(pc.gray("Syncing usage data..."));
101
- const allSources = ['opencode', 'claude', 'codex', 'gemini', 'cursor', 'amp', 'droid'];
102
- const localSources = allSources.filter(s => s !== 'cursor');
103
- const { cursorSync, localMessages } = await loadDataSourcesParallel(localSources);
104
- if (!localMessages) {
105
- spinner.error("No data found to sync.");
106
- process.exit(1);
107
- }
108
- const graphData = await finalizeGraphAsync({
109
- localMessages,
110
- includeCursor: cursorSync.synced,
111
- });
112
- const baseUrl = getApiBaseUrl();
113
- const response = await fetch(`${baseUrl}/api/sync`, {
114
- method: "POST",
115
- headers: {
116
- "Authorization": `Bearer ${credentials.token}`,
117
- "Content-Type": "application/json",
118
- },
119
- body: JSON.stringify({ data: graphData }),
120
- });
121
- if (!response.ok) {
122
- spinner.error(`Sync failed: ${response.statusText}`);
123
- process.exit(1);
124
- }
125
- spinner.stop();
126
- console.log(pc.green("\n Synced successfully!"));
127
- console.log(pc.cyan(` ${baseUrl}/@${credentials.username}\n`));
128
- }
129
76
  /**
130
77
  * Prompt user to login to Cursor during first-run if Cursor is installed
131
78
  * Returns true if user successfully logged in, false otherwise
@@ -189,15 +136,28 @@ async function promptForCursorLogin() {
189
136
  console.log();
190
137
  return true;
191
138
  }
192
- async function openBrowserWithData() {
139
+ async function openBrowserWithData(inviterUsername) {
193
140
  // Check if Cursor is installed but not logged in - prompt user to setup
194
141
  const cursorInstalled = isCursorInstalled();
195
142
  const cursorLoggedIn = isCursorLoggedIn();
143
+ // Clean inviter username (strip @ prefix if present)
144
+ const inviter = inviterUsername?.replace(/^@/, "");
196
145
  console.log(pc.cyan("\n Vibetracking\n"));
146
+ if (inviter) {
147
+ console.log(pc.magenta(` Accepting challenge from @${inviter}\n`));
148
+ }
197
149
  if (cursorInstalled && !cursorLoggedIn) {
198
150
  console.log(pc.white(" We detected Cursor IDE installed."));
199
151
  await promptForCursorLogin();
200
152
  }
153
+ // Initialize native module (downloads binary on first run)
154
+ try {
155
+ await initNativeModule();
156
+ }
157
+ catch (e) {
158
+ console.error(pc.red(`\n Failed to initialize: ${e.message}\n`));
159
+ process.exit(1);
160
+ }
201
161
  const spinner = createSpinner({ color: "cyan" });
202
162
  spinner.start(pc.gray("Scanning AI coding tool data..."));
203
163
  const allSources = ['opencode', 'claude', 'codex', 'gemini', 'cursor', 'amp', 'droid'];
@@ -249,57 +209,17 @@ async function openBrowserWithData() {
249
209
  // Encode data and open browser
250
210
  const encoded = encodeDataForBrowser(graphData);
251
211
  const baseUrl = getApiBaseUrl();
252
- const url = `${baseUrl}/import#${encoded}`;
212
+ // Build URL with optional inviter query param
213
+ let url = `${baseUrl}/import`;
214
+ if (inviter) {
215
+ url += `?inviter=${encodeURIComponent(inviter)}`;
216
+ }
217
+ url += `#${encoded}`;
253
218
  console.log(pc.white(" Opening browser to import your data..."));
254
219
  console.log(pc.gray(` ${url.slice(0, 60)}...\n`));
255
220
  await open(url);
256
221
  }
257
222
  // =============================================================================
258
- // Sync Command (for cron jobs)
259
- // =============================================================================
260
- async function handleSyncCommand(options) {
261
- const credentials = loadCredentials();
262
- if (!credentials) {
263
- if (!options.quiet) {
264
- console.log(pc.yellow("\n Not authenticated."));
265
- console.log(pc.gray(" Run 'vibetracking' first to authenticate via browser.\n"));
266
- }
267
- process.exit(1);
268
- }
269
- const allSources = ['opencode', 'claude', 'codex', 'gemini', 'cursor', 'amp', 'droid'];
270
- const localSources = allSources.filter(s => s !== 'cursor');
271
- const { cursorSync, localMessages } = await loadDataSourcesParallel(localSources);
272
- if (!localMessages) {
273
- if (!options.quiet) {
274
- console.log(pc.yellow("\n No data to sync.\n"));
275
- }
276
- process.exit(1);
277
- }
278
- const graphData = await finalizeGraphAsync({
279
- localMessages,
280
- includeCursor: cursorSync.synced,
281
- });
282
- const baseUrl = getApiBaseUrl();
283
- const response = await fetch(`${baseUrl}/api/sync`, {
284
- method: "POST",
285
- headers: {
286
- "Authorization": `Bearer ${credentials.token}`,
287
- "Content-Type": "application/json",
288
- },
289
- body: JSON.stringify({ data: graphData }),
290
- });
291
- if (!response.ok) {
292
- if (!options.quiet) {
293
- console.log(pc.red(`\n Sync failed: ${response.statusText}\n`));
294
- }
295
- process.exit(1);
296
- }
297
- if (!options.quiet) {
298
- console.log(pc.green("\n Synced successfully!"));
299
- console.log(pc.cyan(` ${baseUrl}/@${credentials.username}\n`));
300
- }
301
- }
302
- // =============================================================================
303
223
  // Data Loading
304
224
  // =============================================================================
305
225
  async function syncCursorData() {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,42 @@
7
7
  *
8
8
  * Communication: file (JSON input) -> stdout (JSON output)
9
9
  */
10
- import nativeCore from "@starknetid/vibetracking-core";
10
+ import { createRequire } from "module";
11
+ import { existsSync } from "node:fs";
11
12
  import { readFileSync } from "node:fs";
13
+ import { homedir } from "os";
14
+ import path from "path";
15
+ // Binary configuration - must match native.ts
16
+ const BINARY_VERSION = "0.2.0";
17
+ function getPlatformBinaryName() {
18
+ const platform = process.platform;
19
+ const arch = process.arch;
20
+ const platformMap = {
21
+ "darwin-arm64": "darwin-arm64",
22
+ "darwin-x64": "darwin-x64",
23
+ "linux-x64": "linux-x64-gnu",
24
+ "linux-arm64": "linux-arm64-gnu",
25
+ "win32-x64": "win32-x64-msvc",
26
+ "win32-arm64": "win32-arm64-msvc",
27
+ };
28
+ const key = `${platform}-${arch}`;
29
+ const binaryName = platformMap[key];
30
+ if (!binaryName) {
31
+ throw new Error(`Unsupported platform: ${platform}-${arch}`);
32
+ }
33
+ return `vibetracking-core.${binaryName}.node`;
34
+ }
35
+ function getBinaryPath() {
36
+ const binDir = path.join(homedir(), ".vibetracking", "bin", BINARY_VERSION);
37
+ return path.join(binDir, getPlatformBinaryName());
38
+ }
39
+ // Load the native module from the downloaded binary
40
+ const binaryPath = getBinaryPath();
41
+ if (!existsSync(binaryPath)) {
42
+ throw new Error(`Native binary not found at ${binaryPath}. Run 'vibetracking' first to download it.`);
43
+ }
44
+ const require = createRequire(import.meta.url);
45
+ const nativeCore = require(binaryPath);
12
46
  async function main() {
13
47
  const inputFile = process.argv[2];
14
48
  if (!inputFile) {
@@ -1 +1 @@
1
- {"version":3,"file":"native-runner.js","sourceRoot":"","sources":["../src/native-runner.ts"],"names":[],"mappings":";AACA;;;;;;;GAOG;AAEH,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAOvC,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAElC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE/C,IAAI,OAA4B,CAAC;IACjC,IAAI,CAAC;QACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAwB,CAAC;IACrD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,yBAA0B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAEjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,iCAAiC,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,MAAe,CAAC;IAEpB,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,mBAAmB;YACtB,MAAM,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAuD,CAAC,CAAC;YACrG,MAAM;QACR,KAAK,gBAAgB;YACnB,MAAM,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAoD,CAAC,CAAC;YACrG,MAAM;QACR,KAAK,uBAAuB;YAC1B,MAAM,GAAG,MAAM,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAA2D,CAAC,CAAC;YACnH,MAAM;QACR,KAAK,eAAe;YAClB,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAmD,CAAC,CAAC;YACnG,MAAM;QACR,KAAK,wBAAwB;YAC3B,MAAM,GAAG,MAAM,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAA4D,CAAC,CAAC;YACrH,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,kDAAkD;IAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,MAAM,KAAK,GAAG,CAAU,CAAC;IACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;QAClC,KAAK,EAAE,KAAK,CAAC,OAAO;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK;KACnB,CAAC,CAAC,CAAC;IACJ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"native-runner.js","sourceRoot":"","sources":["../src/native-runner.ts"],"names":[],"mappings":"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"}
package/dist/native.d.ts CHANGED
@@ -1,10 +1,15 @@
1
1
  /**
2
2
  * Native module loader for Rust core
3
3
  *
4
- * Exposes all Rust functions with proper TypeScript types.
5
- * Native module is REQUIRED - no TypeScript fallback.
4
+ * Downloads the native binary from GitHub releases on first run,
5
+ * then loads it from ~/.vibetracking/bin/
6
6
  */
7
7
  import type { TokenContributionData, SourceType } from "./graph-types.js";
8
+ /**
9
+ * Initialize the native module - downloads binary if needed
10
+ * Must be called before using any native functions
11
+ */
12
+ export declare function initNativeModule(): Promise<void>;
8
13
  /**
9
14
  * Check if native module is available
10
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
package/dist/native.js CHANGED
@@ -1,21 +1,91 @@
1
1
  /**
2
2
  * Native module loader for Rust core
3
3
  *
4
- * Exposes all Rust functions with proper TypeScript types.
5
- * Native module is REQUIRED - no TypeScript fallback.
4
+ * Downloads the native binary from GitHub releases on first run,
5
+ * then loads it from ~/.vibetracking/bin/
6
6
  */
7
+ import { createRequire } from "module";
8
+ import { existsSync, mkdirSync, writeFileSync, chmodSync } from "fs";
9
+ import { homedir } from "os";
10
+ import path from "path";
11
+ // =============================================================================
12
+ // Binary Download Configuration
13
+ // =============================================================================
14
+ const BINARY_VERSION = "0.2.0";
15
+ const GITHUB_REPO = "lfglabs-dev/vibetracking.dev";
16
+ const GITHUB_RELEASE_URL = `https://github.com/${GITHUB_REPO}/releases/download`;
17
+ function getPlatformBinaryName() {
18
+ const platform = process.platform;
19
+ const arch = process.arch;
20
+ const platformMap = {
21
+ "darwin-arm64": "darwin-arm64",
22
+ "darwin-x64": "darwin-x64",
23
+ "linux-x64": "linux-x64-gnu",
24
+ "linux-arm64": "linux-arm64-gnu",
25
+ "win32-x64": "win32-x64-msvc",
26
+ "win32-arm64": "win32-arm64-msvc",
27
+ };
28
+ const key = `${platform}-${arch}`;
29
+ const binaryName = platformMap[key];
30
+ if (!binaryName) {
31
+ throw new Error(`Unsupported platform: ${platform}-${arch}`);
32
+ }
33
+ return `vibetracking-core.${binaryName}.node`;
34
+ }
35
+ function getBinaryPath() {
36
+ const binDir = path.join(homedir(), ".vibetracking", "bin", BINARY_VERSION);
37
+ return path.join(binDir, getPlatformBinaryName());
38
+ }
39
+ async function downloadBinary(destPath) {
40
+ const binaryName = getPlatformBinaryName();
41
+ const url = `${GITHUB_RELEASE_URL}/cli-v${BINARY_VERSION}/${binaryName}`;
42
+ console.log(`\n Downloading native binary...`);
43
+ console.log(` ${url}\n`);
44
+ const response = await fetch(url);
45
+ if (!response.ok) {
46
+ throw new Error(`Failed to download binary: ${response.status} ${response.statusText}\n` +
47
+ `URL: ${url}\n` +
48
+ `Please check if the release exists at https://github.com/${GITHUB_REPO}/releases/tag/cli-v${BINARY_VERSION}`);
49
+ }
50
+ const buffer = await response.arrayBuffer();
51
+ mkdirSync(path.dirname(destPath), { recursive: true });
52
+ writeFileSync(destPath, Buffer.from(buffer));
53
+ // Make executable on Unix
54
+ if (process.platform !== "win32") {
55
+ chmodSync(destPath, 0o755);
56
+ }
57
+ console.log(` Binary installed to ${destPath}\n`);
58
+ }
59
+ async function ensureBinaryExists() {
60
+ const binaryPath = getBinaryPath();
61
+ if (!existsSync(binaryPath)) {
62
+ await downloadBinary(binaryPath);
63
+ }
64
+ return binaryPath;
65
+ }
7
66
  // =============================================================================
8
67
  // Module loading
9
68
  // =============================================================================
10
69
  let nativeCore = null;
11
70
  let loadError = null;
12
- try {
13
- // Type assertion needed because dynamic import returns module namespace
14
- // nativeCore.version() is called directly, async functions go through subprocess
15
- nativeCore = await import("@starknetid/vibetracking-core").then((m) => (m.default || m));
16
- }
17
- catch (e) {
18
- loadError = e;
71
+ let binaryPath = null;
72
+ /**
73
+ * Initialize the native module - downloads binary if needed
74
+ * Must be called before using any native functions
75
+ */
76
+ export async function initNativeModule() {
77
+ if (nativeCore)
78
+ return; // Already initialized
79
+ try {
80
+ binaryPath = await ensureBinaryExists();
81
+ const require = createRequire(import.meta.url);
82
+ nativeCore = require(binaryPath);
83
+ }
84
+ catch (e) {
85
+ loadError = e;
86
+ throw new Error(`Failed to load native module: ${loadError.message}\n` +
87
+ `Binary path: ${binaryPath || "unknown"}`);
88
+ }
19
89
  }
20
90
  // =============================================================================
21
91
  // Public API
@@ -101,7 +171,7 @@ function fromNativeResult(result) {
101
171
  // =============================================================================
102
172
  import { fileURLToPath } from "node:url";
103
173
  import { dirname, join } from "node:path";
104
- import { writeFileSync, unlinkSync, mkdirSync } from "node:fs";
174
+ import { unlinkSync } from "node:fs";
105
175
  import { tmpdir } from "node:os";
106
176
  import { randomUUID } from "node:crypto";
107
177
  const __filename = fileURLToPath(import.meta.url);
@@ -234,7 +304,7 @@ async function runInSubprocess(method, args) {
234
304
  }
235
305
  export async function parseLocalSourcesAsync(options) {
236
306
  if (!isNativeAvailable()) {
237
- throw new Error("Native module required. Run: bun run build:core");
307
+ throw new Error("Native module not initialized. Call initNativeModule() first.");
238
308
  }
239
309
  const nativeOptions = {
240
310
  homeDir: undefined,
@@ -247,7 +317,7 @@ export async function parseLocalSourcesAsync(options) {
247
317
  }
248
318
  export async function finalizeReportAsync(options) {
249
319
  if (!isNativeAvailable()) {
250
- throw new Error("Native module required. Run: bun run build:core");
320
+ throw new Error("Native module not initialized. Call initNativeModule() first.");
251
321
  }
252
322
  const nativeOptions = {
253
323
  homeDir: undefined,
@@ -261,7 +331,7 @@ export async function finalizeReportAsync(options) {
261
331
  }
262
332
  export async function finalizeMonthlyReportAsync(options) {
263
333
  if (!isNativeAvailable()) {
264
- throw new Error("Native module required. Run: bun run build:core");
334
+ throw new Error("Native module not initialized. Call initNativeModule() first.");
265
335
  }
266
336
  const nativeOptions = {
267
337
  homeDir: undefined,
@@ -275,7 +345,7 @@ export async function finalizeMonthlyReportAsync(options) {
275
345
  }
276
346
  export async function finalizeGraphAsync(options) {
277
347
  if (!isNativeAvailable()) {
278
- throw new Error("Native module required. Run: bun run build:core");
348
+ throw new Error("Native module not initialized. Call initNativeModule() first.");
279
349
  }
280
350
  const nativeOptions = {
281
351
  homeDir: undefined,
@@ -290,7 +360,7 @@ export async function finalizeGraphAsync(options) {
290
360
  }
291
361
  export async function finalizeReportAndGraphAsync(options) {
292
362
  if (!isNativeAvailable()) {
293
- throw new Error("Native module required. Run: bun run build:core");
363
+ throw new Error("Native module not initialized. Call initNativeModule() first.");
294
364
  }
295
365
  const nativeOptions = {
296
366
  homeDir: undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"native.js","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native.js","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vibetracking",
3
- "version": "0.1.0",
3
+ "version": "0.2.1",
4
4
  "description": "Track AI coding assistant token usage and costs across Claude Code, Codex, Cursor, and more.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -32,7 +32,6 @@
32
32
  "prepublishOnly": "bun run build"
33
33
  },
34
34
  "dependencies": {
35
- "@starknetid/vibetracking-core": "^0.1.0",
36
35
  "clipboardy": "^5.0.2",
37
36
  "commander": "^14.0.2",
38
37
  "csv-parse": "^5.6.0",
package/dist/auth.d.ts DELETED
@@ -1,17 +0,0 @@
1
- /**
2
- * Vibetracking CLI Authentication Commands
3
- * Handles login, logout, and whoami commands
4
- */
5
- /**
6
- * Login command - initiates device flow authentication
7
- */
8
- export declare function login(): Promise<void>;
9
- /**
10
- * Logout command - clears stored credentials
11
- */
12
- export declare function logout(): Promise<void>;
13
- /**
14
- * Whoami command - displays current user info
15
- */
16
- export declare function whoami(): Promise<void>;
17
- //# sourceMappingURL=auth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+BH;;GAEG;AACH,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CA4F3C;AAED;;GAEG;AACH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAiB5C;AAED;;GAEG;AACH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAa5C"}
package/dist/auth.js DELETED
@@ -1,162 +0,0 @@
1
- /**
2
- * Vibetracking CLI Authentication Commands
3
- * Handles login, logout, and whoami commands
4
- */
5
- import pc from "picocolors";
6
- import * as os from "node:os";
7
- import { saveCredentials, loadCredentials, clearCredentials, getApiBaseUrl, } from "./credentials.js";
8
- const MAX_POLL_ATTEMPTS = 180; // 15 minutes max
9
- /**
10
- * Login command - initiates device flow authentication
11
- */
12
- export async function login() {
13
- const credentials = loadCredentials();
14
- if (credentials) {
15
- console.log(pc.yellow(`\n Already logged in as ${pc.bold(credentials.username)}`));
16
- console.log(pc.gray(" Run 'vibetracking logout' to sign out first.\n"));
17
- return;
18
- }
19
- const baseUrl = getApiBaseUrl();
20
- console.log(pc.cyan("\n Vibetracking - Login\n"));
21
- // Step 1: Request device code
22
- console.log(pc.gray(" Requesting authorization code..."));
23
- let deviceCodeData;
24
- try {
25
- const response = await fetch(`${baseUrl}/api/auth/device`, {
26
- method: "POST",
27
- headers: { "Content-Type": "application/json" },
28
- body: JSON.stringify({ deviceName: getDeviceName() }),
29
- });
30
- if (!response.ok) {
31
- throw new Error(`Server returned ${response.status}`);
32
- }
33
- deviceCodeData = await response.json();
34
- }
35
- catch (error) {
36
- console.error(pc.red(`\n Error: Failed to connect to server.`));
37
- console.error(pc.gray(` ${error.message}\n`));
38
- process.exit(1);
39
- }
40
- // Step 2: Display instructions
41
- console.log();
42
- console.log(pc.white(" Open this URL in your browser:"));
43
- console.log(pc.cyan(` ${deviceCodeData.verificationUrl}\n`));
44
- console.log(pc.white(" Enter this code:"));
45
- console.log(pc.bold(pc.green(` ${deviceCodeData.userCode}\n`)));
46
- // Try to open browser automatically
47
- await openBrowser(deviceCodeData.verificationUrl);
48
- console.log(pc.gray(" Waiting for authorization..."));
49
- // Step 3: Poll for completion
50
- let attempts = 0;
51
- const pollInterval = (deviceCodeData.interval || 5) * 1000;
52
- while (attempts < MAX_POLL_ATTEMPTS) {
53
- await sleep(pollInterval);
54
- attempts++;
55
- try {
56
- const response = await fetch(`${baseUrl}/api/auth/device/poll`, {
57
- method: "POST",
58
- headers: { "Content-Type": "application/json" },
59
- body: JSON.stringify({ deviceCode: deviceCodeData.deviceCode }),
60
- });
61
- const data = await response.json();
62
- if (data.status === "complete" && data.token && data.user) {
63
- // Success!
64
- saveCredentials({
65
- token: data.token,
66
- username: data.user.username,
67
- avatarUrl: data.user.avatarUrl,
68
- createdAt: new Date().toISOString(),
69
- });
70
- console.log(pc.green(`\n Success! Logged in as ${pc.bold(data.user.username)}`));
71
- console.log(pc.gray(" You can now use 'vibetracking submit' to share your usage.\n"));
72
- return;
73
- }
74
- if (data.status === "expired") {
75
- console.error(pc.red("\n Authorization code expired. Please try again.\n"));
76
- process.exit(1);
77
- }
78
- // Still pending - show a dot to indicate progress
79
- process.stdout.write(pc.gray("."));
80
- }
81
- catch (error) {
82
- // Network error - continue polling
83
- process.stdout.write(pc.red("!"));
84
- }
85
- }
86
- console.error(pc.red("\n\n Timeout: Authorization took too long. Please try again.\n"));
87
- process.exit(1);
88
- }
89
- /**
90
- * Logout command - clears stored credentials
91
- */
92
- export async function logout() {
93
- const credentials = loadCredentials();
94
- if (!credentials) {
95
- console.log(pc.yellow("\n Not logged in.\n"));
96
- return;
97
- }
98
- const username = credentials.username;
99
- const cleared = clearCredentials();
100
- if (cleared) {
101
- console.log(pc.green(`\n Logged out from ${pc.bold(username)}\n`));
102
- }
103
- else {
104
- console.error(pc.red("\n Failed to clear credentials.\n"));
105
- process.exit(1);
106
- }
107
- }
108
- /**
109
- * Whoami command - displays current user info
110
- */
111
- export async function whoami() {
112
- const credentials = loadCredentials();
113
- if (!credentials) {
114
- console.log(pc.yellow("\n Not logged in."));
115
- console.log(pc.gray(" Run 'vibetracking login' to authenticate.\n"));
116
- return;
117
- }
118
- console.log(pc.cyan("\n Vibetracking - Account Info\n"));
119
- console.log(pc.white(` Username: ${pc.bold(credentials.username)}`));
120
- console.log(pc.gray(` Logged in: ${new Date(credentials.createdAt).toLocaleDateString()}`));
121
- console.log();
122
- }
123
- /**
124
- * Get a device name for the token
125
- */
126
- function getDeviceName() {
127
- return `CLI on ${os.hostname()}`;
128
- }
129
- /**
130
- * Sleep helper
131
- */
132
- function sleep(ms) {
133
- return new Promise((resolve) => setTimeout(resolve, ms));
134
- }
135
- /**
136
- * Try to open browser automatically
137
- */
138
- async function openBrowser(url) {
139
- try {
140
- const { exec } = await import("node:child_process");
141
- const platform = process.platform;
142
- let command;
143
- if (platform === "darwin") {
144
- command = `open "${url}"`;
145
- }
146
- else if (platform === "win32") {
147
- command = `start "" "${url}"`;
148
- }
149
- else {
150
- command = `xdg-open "${url}"`;
151
- }
152
- exec(command, (error) => {
153
- if (error) {
154
- // Silent fail - user can still open manually
155
- }
156
- });
157
- }
158
- catch {
159
- // Silent fail
160
- }
161
- }
162
- //# sourceMappingURL=auth.js.map
package/dist/auth.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- /**
2
- * Vibetracking CLI Credentials Manager
3
- * Stores and retrieves API tokens for authenticated CLI operations
4
- */
5
- export interface Credentials {
6
- token: string;
7
- username: string;
8
- avatarUrl?: string;
9
- createdAt: string;
10
- }
11
- /**
12
- * Save credentials to disk
13
- */
14
- export declare function saveCredentials(credentials: Credentials): void;
15
- /**
16
- * Load credentials from disk
17
- * Returns null if no credentials are stored or file is invalid
18
- */
19
- export declare function loadCredentials(): Credentials | null;
20
- /**
21
- * Clear stored credentials
22
- */
23
- export declare function clearCredentials(): boolean;
24
- /**
25
- * Check if user is logged in
26
- */
27
- export declare function isLoggedIn(): boolean;
28
- /**
29
- * Get the API base URL
30
- */
31
- export declare function getApiBaseUrl(): string;
32
- /**
33
- * Get the credentials file path (for debugging)
34
- */
35
- export declare function getCredentialsPath(): string;
36
- //# sourceMappingURL=credentials.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAcD;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAM9D;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,WAAW,GAAG,IAAI,CAiBpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAU1C;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C"}
@@ -1,82 +0,0 @@
1
- /**
2
- * Vibetracking CLI Credentials Manager
3
- * Stores and retrieves API tokens for authenticated CLI operations
4
- */
5
- import * as fs from "node:fs";
6
- import * as path from "node:path";
7
- import * as os from "node:os";
8
- const CONFIG_DIR = path.join(os.homedir(), ".vibetracking");
9
- const CREDENTIALS_FILE = path.join(CONFIG_DIR, "credentials.json");
10
- /**
11
- * Ensure the config directory exists
12
- */
13
- function ensureConfigDir() {
14
- if (!fs.existsSync(CONFIG_DIR)) {
15
- fs.mkdirSync(CONFIG_DIR, { recursive: true, mode: 0o700 });
16
- }
17
- }
18
- /**
19
- * Save credentials to disk
20
- */
21
- export function saveCredentials(credentials) {
22
- ensureConfigDir();
23
- fs.writeFileSync(CREDENTIALS_FILE, JSON.stringify(credentials, null, 2), {
24
- encoding: "utf-8",
25
- mode: 0o600, // Read/write for owner only
26
- });
27
- }
28
- /**
29
- * Load credentials from disk
30
- * Returns null if no credentials are stored or file is invalid
31
- */
32
- export function loadCredentials() {
33
- try {
34
- if (!fs.existsSync(CREDENTIALS_FILE)) {
35
- return null;
36
- }
37
- const data = fs.readFileSync(CREDENTIALS_FILE, "utf-8");
38
- const parsed = JSON.parse(data);
39
- // Validate structure
40
- if (!parsed.token || !parsed.username) {
41
- return null;
42
- }
43
- return parsed;
44
- }
45
- catch {
46
- return null;
47
- }
48
- }
49
- /**
50
- * Clear stored credentials
51
- */
52
- export function clearCredentials() {
53
- try {
54
- if (fs.existsSync(CREDENTIALS_FILE)) {
55
- fs.unlinkSync(CREDENTIALS_FILE);
56
- return true;
57
- }
58
- return false;
59
- }
60
- catch {
61
- return false;
62
- }
63
- }
64
- /**
65
- * Check if user is logged in
66
- */
67
- export function isLoggedIn() {
68
- return loadCredentials() !== null;
69
- }
70
- /**
71
- * Get the API base URL
72
- */
73
- export function getApiBaseUrl() {
74
- return process.env.VIBETRACKING_API_URL || "https://vibetracking.dev";
75
- }
76
- /**
77
- * Get the credentials file path (for debugging)
78
- */
79
- export function getCredentialsPath() {
80
- return CREDENTIALS_FILE;
81
- }
82
- //# sourceMappingURL=credentials.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAS9B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,eAAe,CAAC,CAAC;AAC5D,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;AAEnE;;GAEG;AACH,SAAS,eAAe;IACtB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,WAAwB;IACtD,eAAe,EAAE,CAAC;IAClB,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;QACvE,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,KAAK,EAAE,4BAA4B;KAC1C,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEhC,qBAAqB;QACrB,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,MAAqB,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACpC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,eAAe,EAAE,KAAK,IAAI,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,0BAA0B,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
package/dist/submit.d.ts DELETED
@@ -1,23 +0,0 @@
1
- /**
2
- * Vibetracking CLI Submit Command
3
- * Submits local token usage data to the platform
4
- */
5
- interface SubmitOptions {
6
- opencode?: boolean;
7
- claude?: boolean;
8
- codex?: boolean;
9
- gemini?: boolean;
10
- cursor?: boolean;
11
- amp?: boolean;
12
- droid?: boolean;
13
- since?: string;
14
- until?: string;
15
- year?: string;
16
- dryRun?: boolean;
17
- }
18
- /**
19
- * Submit command - sends usage data to the platform
20
- */
21
- export declare function submit(options?: SubmitOptions): Promise<void>;
22
- export {};
23
- //# sourceMappingURL=submit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../src/submit.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,UAAU,aAAa;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAuBD;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0IvE"}
package/dist/submit.js DELETED
@@ -1,144 +0,0 @@
1
- /**
2
- * Vibetracking CLI Submit Command
3
- * Submits local token usage data to the platform
4
- */
5
- import pc from "picocolors";
6
- import { loadCredentials, getApiBaseUrl } from "./credentials.js";
7
- import { parseLocalSourcesAsync, finalizeReportAndGraphAsync } from "./native.js";
8
- import { syncCursorCache, loadCursorCredentials } from "./cursor.js";
9
- import { formatCurrency } from "./table.js";
10
- /**
11
- * Submit command - sends usage data to the platform
12
- */
13
- export async function submit(options = {}) {
14
- // Step 1: Check if logged in
15
- const credentials = loadCredentials();
16
- if (!credentials) {
17
- console.log(pc.yellow("\n Not logged in."));
18
- console.log(pc.gray(" Run 'vibetracking login' first.\n"));
19
- process.exit(1);
20
- }
21
- console.log(pc.cyan("\n Vibetracking - Submit Usage Data\n"));
22
- console.log(pc.gray(" Scanning local session data..."));
23
- const hasFilter = options.opencode || options.claude || options.codex || options.gemini || options.cursor || options.amp || options.droid;
24
- let sources;
25
- let includeCursor = true;
26
- if (hasFilter) {
27
- sources = [];
28
- if (options.opencode)
29
- sources.push("opencode");
30
- if (options.claude)
31
- sources.push("claude");
32
- if (options.codex)
33
- sources.push("codex");
34
- if (options.gemini)
35
- sources.push("gemini");
36
- if (options.cursor)
37
- sources.push("cursor");
38
- if (options.amp)
39
- sources.push("amp");
40
- if (options.droid)
41
- sources.push("droid");
42
- includeCursor = sources.includes("cursor");
43
- }
44
- // Filter out cursor from local sources (it's handled separately via sync)
45
- const localSources = sources?.filter((s) => s !== "cursor");
46
- let data;
47
- try {
48
- // Two-phase processing (same as TUI) for consistency:
49
- // Phase 1: Parse local sources + sync cursor in parallel
50
- const [localMessages, cursorSync] = await Promise.all([
51
- parseLocalSourcesAsync({
52
- sources: localSources,
53
- since: options.since,
54
- until: options.until,
55
- year: options.year,
56
- }),
57
- includeCursor && loadCursorCredentials()
58
- ? syncCursorCache()
59
- : Promise.resolve({ synced: false, rows: 0 }),
60
- ]);
61
- // Phase 2: Finalize with pricing (combines local + cursor)
62
- // Single subprocess call ensures consistent pricing for both report and graph
63
- const { report, graph } = await finalizeReportAndGraphAsync({
64
- localMessages,
65
- includeCursor: includeCursor && cursorSync.synced,
66
- since: options.since,
67
- until: options.until,
68
- year: options.year,
69
- });
70
- // Use graph structure for submission, report's cost for display
71
- data = graph;
72
- data.summary.totalCost = report.totalCost;
73
- }
74
- catch (error) {
75
- console.error(pc.red(`\n Error generating data: ${error.message}\n`));
76
- process.exit(1);
77
- }
78
- // Step 4: Show summary
79
- console.log(pc.white(" Data to submit:"));
80
- console.log(pc.gray(` Date range: ${data.meta.dateRange.start} to ${data.meta.dateRange.end}`));
81
- console.log(pc.gray(` Active days: ${data.summary.activeDays}`));
82
- console.log(pc.gray(` Total tokens: ${data.summary.totalTokens.toLocaleString()}`));
83
- console.log(pc.gray(` Total cost: ${formatCurrency(data.summary.totalCost)}`));
84
- console.log(pc.gray(` Sources: ${data.summary.sources.join(", ")}`));
85
- console.log(pc.gray(` Models: ${data.summary.models.length} models`));
86
- console.log();
87
- if (data.summary.totalTokens === 0) {
88
- console.log(pc.yellow(" No usage data found to submit.\n"));
89
- return;
90
- }
91
- // Step 5: Dry run check
92
- if (options.dryRun) {
93
- console.log(pc.yellow(" Dry run - not submitting data.\n"));
94
- return;
95
- }
96
- // Step 6: Submit to server
97
- console.log(pc.gray(" Submitting to server..."));
98
- const baseUrl = getApiBaseUrl();
99
- try {
100
- const response = await fetch(`${baseUrl}/api/submit`, {
101
- method: "POST",
102
- headers: {
103
- "Content-Type": "application/json",
104
- Authorization: `Bearer ${credentials.token}`,
105
- },
106
- body: JSON.stringify(data),
107
- });
108
- const result = await response.json();
109
- if (!response.ok) {
110
- console.error(pc.red(`\n Error: ${result.error || "Submission failed"}`));
111
- if (result.details) {
112
- for (const detail of result.details) {
113
- console.error(pc.gray(` - ${detail}`));
114
- }
115
- }
116
- console.log();
117
- process.exit(1);
118
- }
119
- // Success!
120
- console.log(pc.green("\n Successfully submitted!"));
121
- console.log();
122
- console.log(pc.white(" Summary:"));
123
- console.log(pc.gray(` Submission ID: ${result.submissionId}`));
124
- console.log(pc.gray(` Total tokens: ${result.metrics?.totalTokens?.toLocaleString()}`));
125
- console.log(pc.gray(` Total cost: ${formatCurrency(result.metrics?.totalCost || 0)}`));
126
- console.log(pc.gray(` Active days: ${result.metrics?.activeDays}`));
127
- console.log();
128
- console.log(pc.cyan(` View your profile: ${baseUrl}/u/${credentials.username}`));
129
- console.log();
130
- if (result.warnings && result.warnings.length > 0) {
131
- console.log(pc.yellow(" Warnings:"));
132
- for (const warning of result.warnings) {
133
- console.log(pc.gray(` - ${warning}`));
134
- }
135
- console.log();
136
- }
137
- }
138
- catch (error) {
139
- console.error(pc.red(`\n Error: Failed to connect to server.`));
140
- console.error(pc.gray(` ${error.message}\n`));
141
- process.exit(1);
142
- }
143
- }
144
- //# sourceMappingURL=submit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"submit.js","sourceRoot":"","sources":["../src/submit.ts"],"names":[],"mappings":"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"}