UNPKG

@tensorify.io/cli

Version:

Official CLI for Tensorify.io - Build, test, and deploy machine learning plugins

58 lines 3.01 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.whoamiCommand = void 0; const commander_1 = require("commander"); const chalk_1 = __importDefault(require("chalk")); const auth_service_1 = require("../auth/auth-service"); const session_storage_1 = require("../auth/session-storage"); exports.whoamiCommand = new commander_1.Command("whoami") .description("Display current logged-in user information") .option("-d, --dev", "Use development environment") .action(async (options) => { try { // Check if user is authenticated const isAuthenticated = await auth_service_1.authService.isAuthenticated(); if (!isAuthenticated) { console.log(chalk_1.default.red("❌ Not logged in.")); console.log(chalk_1.default.yellow("💡 Run 'tensorify login' to authenticate.")); process.exit(1); } console.log(chalk_1.default.blue("🔍 Fetching user profile...")); // Determine if we should use dev environment // Priority: explicit --dev flag > saved config > NODE_ENV let isDev = options.dev; if (isDev === undefined) { const config = await (0, session_storage_1.getConfig)(); isDev = config.isDev || process.env.NODE_ENV === "development"; } if (isDev) { console.log(chalk_1.default.cyan("🔧 Using development environment")); } // Fetch user profile from plugins.tensorify.io API const userProfile = await auth_service_1.authService.getUserProfile(isDev); // Display user information in a formatted way console.log("\n" + chalk_1.default.green("👤 User Profile")); console.log(chalk_1.default.gray("═".repeat(50))); console.log(`${chalk_1.default.cyan("ID:")}\t\t${userProfile.id}`); console.log(`${chalk_1.default.cyan("Username:")}\t${userProfile.username}`); console.log(`${chalk_1.default.cyan("Full Name:")}\t${userProfile.fullName || chalk_1.default.gray("Not set")}`); console.log(`${chalk_1.default.cyan("Email:")}\t\t${userProfile.email}`); console.log(chalk_1.default.gray("═".repeat(50))); console.log(chalk_1.default.green("✅ Successfully retrieved user profile!")); } catch (error) { console.error(chalk_1.default.red("❌ Failed to get user profile:"), error.message); if (error.message.includes("No session token found")) { console.log(chalk_1.default.yellow("💡 Run 'tensorify login' to authenticate.")); } else if (error.message.includes("Unauthorized") || error.message.includes("401")) { console.log(chalk_1.default.yellow("💡 Your session may have expired. Try 'tensorify login' again.")); } process.exit(1); } }); //# sourceMappingURL=whoami.js.map