UNPKG

@re-shell/cli

Version:

Full-stack development platform uniting microservices and microfrontends. Build complete applications with .NET (ASP.NET Core Web API, Minimal API), Java (Spring Boot, Quarkus, Micronaut, Vert.x), Rust (Actix-Web, Warp, Rocket, Axum), Python (FastAPI, Dja

55 lines (54 loc) 1.53 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.mark = mark; exports.getStartupTime = getStartupTime; exports.getMarks = getMarks; exports.defer = defer; exports.getFromCache = getFromCache; exports.setCache = setCache; exports.isVersionRequest = isVersionRequest; exports.isHelpRequest = isHelpRequest; /** * Startup optimization utilities */ const perf_hooks_1 = require("perf_hooks"); // Simple performance tracking const startTime = perf_hooks_1.performance.now(); const marks = []; function mark(name) { marks.push({ name, time: perf_hooks_1.performance.now() }); } function getStartupTime() { return perf_hooks_1.performance.now() - startTime; } function getMarks() { let lastTime = startTime; return marks.map(m => { const delta = m.time - lastTime; lastTime = m.time; return { ...m, delta }; }); } // Defer heavy operations function defer(fn) { setTimeout(fn, 0); } // Cache for expensive operations const cache = new Map(); function getFromCache(key) { return cache.get(key); } function setCache(key, value) { if (cache.size > 100) { const firstKey = cache.keys().next().value; cache.delete(firstKey); } cache.set(key, value); } // Fast path for version display function isVersionRequest() { return process.argv.includes('--version') || process.argv.includes('-v'); } function isHelpRequest() { return process.argv.includes('--help') || process.argv.includes('-h') || process.argv.length <= 2; }