@marteye/studio-cli
Version:
CLI for MartEye Studio API
30 lines (26 loc) • 1.19 kB
JavaScript
;
var studiojs = require('@marteye/studiojs');
var configManager = require('../config/config-manager.js');
function createStudioInstance(options = {}) {
const config = configManager.loadConfig();
// Determine which profile to use
const profileName = options.profile || config.defaultProfile || 'default';
const profile = config.profiles?.[profileName] || {};
// Merge options: CLI args > profile > env vars > defaults
const apiKey = options.apiKey || profile.apiKey || process.env.STUDIO_API_KEY;
if (!apiKey) {
throw new Error('API key is required. Provide it via --api-key, STUDIO_API_KEY env var, or configure it with: studio config set apiKey <key>');
}
const studioConfig = {
apiKey,
defaultTimeout: options.timeout || profile.timeout || 10000,
debug: options.debug || profile.debug || false,
};
// Only set baseUrl if explicitly provided
if (options.baseUrl || profile.baseUrl) {
studioConfig.baseUrl = options.baseUrl || profile.baseUrl;
}
return studiojs.Studio(studioConfig);
}
exports.createStudioInstance = createStudioInstance;
//# sourceMappingURL=studio.js.map