@mks2508/better-logger 0.14.0-alpha.1 → 1.0.0
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/chunks/{Logger-BW-kn5_7.js → Logger-CTAaDeZi.js} +49 -366
- package/dist/chunks/Logger-CTAaDeZi.js.map +1 -0
- package/dist/chunks/Logger-D8pK7XXt.js +2 -0
- package/dist/chunks/Logger-D8pK7XXt.js.map +1 -0
- package/dist/chunks/ScopedLogger-D-7q8uVP.js +2 -0
- package/dist/chunks/ScopedLogger-D-7q8uVP.js.map +1 -0
- package/dist/chunks/ScopedLogger-hS0qSkZD.js +361 -0
- package/dist/chunks/ScopedLogger-hS0qSkZD.js.map +1 -0
- package/dist/core.js +280 -307
- package/dist/exports.cjs +1 -1
- package/dist/exports.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +226 -159
- package/dist/index.js.map +1 -1
- package/dist/styling.cjs +1 -1
- package/dist/styling.js +2 -2
- package/dist/types/Logger.d.ts +17 -15
- package/dist/types/Logger.d.ts.map +1 -1
- package/dist/types/core.d.ts +122 -216
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/exports-module.d.ts +1 -1
- package/dist/types/exports-module.d.ts.map +1 -1
- package/dist/types/index.d.ts +119 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/styling-module.d.ts +1 -1
- package/dist/types/styling-module.d.ts.map +1 -1
- package/package.json +2 -1
- package/src/Logger.ts +105 -58
- package/src/index.ts +32 -25
- package/dist/.tsbuildinfo +0 -1
- package/dist/Logger.d.ts +0 -710
- package/dist/Logger.d.ts.map +0 -1
- package/dist/Logger.js +0 -1118
- package/dist/ScopedLogger.d.ts +0 -318
- package/dist/ScopedLogger.d.ts.map +0 -1
- package/dist/ScopedLogger.js +0 -426
- package/dist/chunks/Logger-BW-kn5_7.js.map +0 -1
- package/dist/chunks/Logger-BpeuYIxR.js +0 -2
- package/dist/chunks/Logger-BpeuYIxR.js.map +0 -1
- package/dist/cli/CommandProcessor.d.ts +0 -103
- package/dist/cli/CommandProcessor.d.ts.map +0 -1
- package/dist/cli/CommandProcessor.js +0 -184
- package/dist/cli/commands/ConfigCommand.d.ts +0 -17
- package/dist/cli/commands/ConfigCommand.d.ts.map +0 -1
- package/dist/cli/commands/ConfigCommand.js +0 -88
- package/dist/cli/commands/ExportCommand.d.ts +0 -51
- package/dist/cli/commands/ExportCommand.d.ts.map +0 -1
- package/dist/cli/commands/ExportCommand.js +0 -243
- package/dist/cli/commands/HistoryCommand.d.ts +0 -50
- package/dist/cli/commands/HistoryCommand.d.ts.map +0 -1
- package/dist/cli/commands/HistoryCommand.js +0 -96
- package/dist/cli/commands/StatusCommand.d.ts +0 -33
- package/dist/cli/commands/StatusCommand.d.ts.map +0 -1
- package/dist/cli/commands/StatusCommand.js +0 -93
- package/dist/cli/commands/ThemeCommand.d.ts +0 -33
- package/dist/cli/commands/ThemeCommand.d.ts.map +0 -1
- package/dist/cli/commands/ThemeCommand.js +0 -79
- package/dist/cli/help.d.ts +0 -15
- package/dist/cli/help.d.ts.map +0 -1
- package/dist/cli/help.js +0 -118
- package/dist/cli/index.d.ts +0 -15
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -46
- package/dist/constants.d.ts +0 -122
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js +0 -159
- package/dist/core.d.ts +0 -134
- package/dist/core.d.ts.map +0 -1
- package/dist/example.d.ts +0 -18
- package/dist/example.d.ts.map +0 -1
- package/dist/example.js +0 -154
- package/dist/exports-module.d.ts +0 -203
- package/dist/exports-module.d.ts.map +0 -1
- package/dist/exports-module.js +0 -260
- package/dist/handlers/AnalyticsLogHandler.d.ts +0 -11
- package/dist/handlers/AnalyticsLogHandler.d.ts.map +0 -1
- package/dist/handlers/AnalyticsLogHandler.js +0 -19
- package/dist/handlers/ExportLogHandler.d.ts +0 -103
- package/dist/handlers/ExportLogHandler.d.ts.map +0 -1
- package/dist/handlers/ExportLogHandler.js +0 -516
- package/dist/handlers/FileLogHandler.d.ts +0 -36
- package/dist/handlers/FileLogHandler.d.ts.map +0 -1
- package/dist/handlers/FileLogHandler.js +0 -156
- package/dist/handlers/RemoteLogHandler.d.ts +0 -14
- package/dist/handlers/RemoteLogHandler.d.ts.map +0 -1
- package/dist/handlers/RemoteLogHandler.js +0 -37
- package/dist/handlers/index.d.ts +0 -8
- package/dist/handlers/index.d.ts.map +0 -1
- package/dist/handlers/index.js +0 -7
- package/dist/index.d.ts +0 -157
- package/dist/index.d.ts.map +0 -1
- package/dist/main.d.ts +0 -2
- package/dist/main.d.ts.map +0 -1
- package/dist/main.js +0 -139
- package/dist/styling/LogStyleBuilder.d.ts +0 -149
- package/dist/styling/LogStyleBuilder.d.ts.map +0 -1
- package/dist/styling/LogStyleBuilder.js +0 -289
- package/dist/styling/SemanticStyles.d.ts +0 -181
- package/dist/styling/SemanticStyles.d.ts.map +0 -1
- package/dist/styling/SemanticStyles.js +0 -339
- package/dist/styling/SmartPresets.d.ts +0 -25
- package/dist/styling/SmartPresets.d.ts.map +0 -1
- package/dist/styling/SmartPresets.js +0 -276
- package/dist/styling/StyleBuilder.d.ts +0 -140
- package/dist/styling/StyleBuilder.d.ts.map +0 -1
- package/dist/styling/StyleBuilder.js +0 -280
- package/dist/styling/banners.d.ts +0 -45
- package/dist/styling/banners.d.ts.map +0 -1
- package/dist/styling/banners.js +0 -155
- package/dist/styling/index.d.ts +0 -10
- package/dist/styling/index.d.ts.map +0 -1
- package/dist/styling/index.js +0 -9
- package/dist/styling/themes.d.ts +0 -10
- package/dist/styling/themes.d.ts.map +0 -1
- package/dist/styling/themes.js +0 -231
- package/dist/styling-module.d.ts +0 -185
- package/dist/styling-module.d.ts.map +0 -1
- package/dist/styling-module.js +0 -199
- package/dist/types/core.js +0 -28
- package/dist/types/handlers.d.ts +0 -88
- package/dist/types/handlers.d.ts.map +0 -1
- package/dist/types/handlers.js +0 -4
- package/dist/types/index.js +0 -4
- package/dist/utils/environment.d.ts +0 -47
- package/dist/utils/environment.d.ts.map +0 -1
- package/dist/utils/environment.js +0 -85
- package/dist/utils/formatting.d.ts +0 -40
- package/dist/utils/formatting.d.ts.map +0 -1
- package/dist/utils/formatting.js +0 -117
- package/dist/utils/index.d.ts +0 -7
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js +0 -6
- package/dist/utils/opentui-detection.d.ts +0 -34
- package/dist/utils/opentui-detection.d.ts.map +0 -1
- package/dist/utils/opentui-detection.js +0 -116
- package/dist/utils/output.d.ts +0 -44
- package/dist/utils/output.d.ts.map +0 -1
- package/dist/utils/output.js +0 -150
- package/dist/utils/stackTrace.d.ts +0 -9
- package/dist/utils/stackTrace.d.ts.map +0 -1
- package/dist/utils/stackTrace.js +0 -81
- package/dist/utils/timestamps.d.ts +0 -20
- package/dist/utils/timestamps.d.ts.map +0 -1
- package/dist/utils/timestamps.js +0 -71
|
@@ -1210,359 +1210,6 @@ function getAvailablePresets() {
|
|
|
1210
1210
|
function hasPreset(name) {
|
|
1211
1211
|
return name in SMART_PRESETS;
|
|
1212
1212
|
}
|
|
1213
|
-
class ScopedLogger extends Logger {
|
|
1214
|
-
parentLogger;
|
|
1215
|
-
scopeName;
|
|
1216
|
-
badgeList = [];
|
|
1217
|
-
contextStack = [];
|
|
1218
|
-
constructor(parentLogger, scopeName, config) {
|
|
1219
|
-
super({ ...parentLogger.getConfig(), ...config });
|
|
1220
|
-
this.parentLogger = parentLogger;
|
|
1221
|
-
this.scopeName = scopeName;
|
|
1222
|
-
const parentHandlers = parentLogger.getHandlers();
|
|
1223
|
-
parentHandlers.forEach((handler) => this.addHandler(handler));
|
|
1224
|
-
}
|
|
1225
|
-
/**
|
|
1226
|
-
* Añade múltiples badges a este logger con scope
|
|
1227
|
-
*
|
|
1228
|
-
* @param {string[]} badges - Array de badges a añadir
|
|
1229
|
-
* @returns {ScopedLogger} Esta instancia para encadenamiento
|
|
1230
|
-
*
|
|
1231
|
-
* @example
|
|
1232
|
-
* const api = logger.scope('API');
|
|
1233
|
-
* api.badges(['v2', 'beta', 'cached'])
|
|
1234
|
-
* .info('Respuesta desde caché');
|
|
1235
|
-
* // [v2] [beta] [cached] [API] Respuesta desde caché
|
|
1236
|
-
*
|
|
1237
|
-
* @since 0.3.0
|
|
1238
|
-
*/
|
|
1239
|
-
badges(badges) {
|
|
1240
|
-
this.badgeList = [...badges];
|
|
1241
|
-
return this;
|
|
1242
|
-
}
|
|
1243
|
-
/**
|
|
1244
|
-
* Añade un badge individual
|
|
1245
|
-
*
|
|
1246
|
-
* @param {string} badge - Badge a añadir
|
|
1247
|
-
* @returns {ScopedLogger} Esta instancia para encadenamiento
|
|
1248
|
-
*
|
|
1249
|
-
* @example
|
|
1250
|
-
* dbLogger.badge('SLOW').warn('Query tardó 3s');
|
|
1251
|
-
* // [SLOW] [Database] Query tardó 3s
|
|
1252
|
-
*
|
|
1253
|
-
* @since 0.3.0
|
|
1254
|
-
*/
|
|
1255
|
-
badge(badge) {
|
|
1256
|
-
if (!this.badgeList.includes(badge)) {
|
|
1257
|
-
this.badgeList.push(badge);
|
|
1258
|
-
}
|
|
1259
|
-
return this;
|
|
1260
|
-
}
|
|
1261
|
-
/**
|
|
1262
|
-
* Elimina todos los badges
|
|
1263
|
-
*
|
|
1264
|
-
* @returns {ScopedLogger} Esta instancia para encadenamiento
|
|
1265
|
-
*
|
|
1266
|
-
* @example
|
|
1267
|
-
* api.clearBadges().info('Sin badges');
|
|
1268
|
-
* // [API] Sin badges
|
|
1269
|
-
*
|
|
1270
|
-
* @since 0.3.0
|
|
1271
|
-
*/
|
|
1272
|
-
clearBadges() {
|
|
1273
|
-
this.badgeList = [];
|
|
1274
|
-
return this;
|
|
1275
|
-
}
|
|
1276
|
-
/**
|
|
1277
|
-
* Establece un preset de estilo para este logger con scope
|
|
1278
|
-
*
|
|
1279
|
-
* @param {string} presetName - Nombre del preset a aplicar
|
|
1280
|
-
* @returns {ScopedLogger} Esta instancia para encadenamiento
|
|
1281
|
-
*
|
|
1282
|
-
* @example
|
|
1283
|
-
* const errorLogger = logger.scope('ErrorHandler')
|
|
1284
|
-
* .style('cyberpunk');
|
|
1285
|
-
*
|
|
1286
|
-
* @since 0.3.0
|
|
1287
|
-
*/
|
|
1288
|
-
style(presetName) {
|
|
1289
|
-
this.setTheme(presetName);
|
|
1290
|
-
return this;
|
|
1291
|
-
}
|
|
1292
|
-
/**
|
|
1293
|
-
* Crea un contexto temporal que se limpia automáticamente
|
|
1294
|
-
*
|
|
1295
|
-
* @param {string} contextName - Nombre del contexto
|
|
1296
|
-
* @returns {ContextLogger} Logger con contexto temporal
|
|
1297
|
-
*
|
|
1298
|
-
* @example
|
|
1299
|
-
* const db = logger.scope('Database');
|
|
1300
|
-
*
|
|
1301
|
-
* // Contexto temporal para una operación
|
|
1302
|
-
* db.context('Migration').run(() => {
|
|
1303
|
-
* db.info('Iniciando migración');
|
|
1304
|
-
* db.success('Tablas creadas');
|
|
1305
|
-
* });
|
|
1306
|
-
* // Contexto automáticamente limpiado
|
|
1307
|
-
*
|
|
1308
|
-
* @since 0.3.0
|
|
1309
|
-
*/
|
|
1310
|
-
context(contextName) {
|
|
1311
|
-
return new ContextLogger(this, contextName);
|
|
1312
|
-
}
|
|
1313
|
-
/**
|
|
1314
|
-
* Sobrescribe el logging principal para incluir badges
|
|
1315
|
-
* @protected
|
|
1316
|
-
* @param {LogLevel} level - Nivel del log
|
|
1317
|
-
* @param {...any} args - Argumentos del log
|
|
1318
|
-
*/
|
|
1319
|
-
log(level, ...args) {
|
|
1320
|
-
const badges = this.getBadgeString();
|
|
1321
|
-
const scopePrefix = this.getScopePrefix();
|
|
1322
|
-
let enhancedMessage = "";
|
|
1323
|
-
if (badges) enhancedMessage += badges + " ";
|
|
1324
|
-
if (scopePrefix) enhancedMessage += `[${scopePrefix}] `;
|
|
1325
|
-
if (args.length > 0) {
|
|
1326
|
-
enhancedMessage += String(args[0]);
|
|
1327
|
-
args[0] = enhancedMessage;
|
|
1328
|
-
}
|
|
1329
|
-
super.log(level, ...args);
|
|
1330
|
-
}
|
|
1331
|
-
/**
|
|
1332
|
-
* Obtiene la cadena de badges formateada
|
|
1333
|
-
* @private
|
|
1334
|
-
* @returns {string} Badges formateados como [BADGE1][BADGE2]
|
|
1335
|
-
*/
|
|
1336
|
-
getBadgeString() {
|
|
1337
|
-
if (this.badgeList.length === 0) return "";
|
|
1338
|
-
return this.badgeList.map((badge) => `[${badge}]`).join("");
|
|
1339
|
-
}
|
|
1340
|
-
/**
|
|
1341
|
-
* Obtiene el prefijo del scope (incluye stack de contexto)
|
|
1342
|
-
* @private
|
|
1343
|
-
* @returns {string} Prefijo completo con contextos
|
|
1344
|
-
*/
|
|
1345
|
-
getScopePrefix() {
|
|
1346
|
-
const parts = [this.scopeName, ...this.contextStack].filter(Boolean);
|
|
1347
|
-
return parts.join(":");
|
|
1348
|
-
}
|
|
1349
|
-
/**
|
|
1350
|
-
* Método interno para añadir contexto
|
|
1351
|
-
* @internal
|
|
1352
|
-
*/
|
|
1353
|
-
_pushContext(context) {
|
|
1354
|
-
this.contextStack.push(context);
|
|
1355
|
-
}
|
|
1356
|
-
/**
|
|
1357
|
-
* Método interno para eliminar contexto
|
|
1358
|
-
* @internal
|
|
1359
|
-
*/
|
|
1360
|
-
_popContext() {
|
|
1361
|
-
this.contextStack.pop();
|
|
1362
|
-
}
|
|
1363
|
-
}
|
|
1364
|
-
class APILogger extends ScopedLogger {
|
|
1365
|
-
constructor(parentLogger, apiName, config) {
|
|
1366
|
-
super(parentLogger, `API:${apiName}`, config);
|
|
1367
|
-
this.badge("API");
|
|
1368
|
-
}
|
|
1369
|
-
/**
|
|
1370
|
-
* Registra operaciones lentas
|
|
1371
|
-
*
|
|
1372
|
-
* @param {string} message - Mensaje sobre la operación lenta
|
|
1373
|
-
* @param {number} duration - Duración en milisegundos (opcional)
|
|
1374
|
-
*
|
|
1375
|
-
* @example
|
|
1376
|
-
* api.slow('Query compleja', 5000);
|
|
1377
|
-
* api.slow('Procesamiento pesado');
|
|
1378
|
-
*
|
|
1379
|
-
* @since 0.3.0
|
|
1380
|
-
*/
|
|
1381
|
-
slow(message, duration) {
|
|
1382
|
-
this.badge("SLOW");
|
|
1383
|
-
const msg = duration ? `${message} (${duration}ms)` : message;
|
|
1384
|
-
this.warn(msg);
|
|
1385
|
-
}
|
|
1386
|
-
/**
|
|
1387
|
-
* Registra límites de tasa alcanzados
|
|
1388
|
-
*
|
|
1389
|
-
* @param {string} message - Mensaje sobre el límite
|
|
1390
|
-
*
|
|
1391
|
-
* @example
|
|
1392
|
-
* api.rateLimit('Límite excedido: 100 req/min');
|
|
1393
|
-
*
|
|
1394
|
-
* @since 0.3.0
|
|
1395
|
-
*/
|
|
1396
|
-
rateLimit(message) {
|
|
1397
|
-
this.badge("RATE_LIMIT");
|
|
1398
|
-
this.warn(message);
|
|
1399
|
-
}
|
|
1400
|
-
/**
|
|
1401
|
-
* Registra problemas de autenticación
|
|
1402
|
-
*
|
|
1403
|
-
* @param {string} message - Mensaje de autenticación
|
|
1404
|
-
*
|
|
1405
|
-
* @example
|
|
1406
|
-
* api.auth('Token inválido o expirado');
|
|
1407
|
-
* api.auth('Credenciales incorrectas');
|
|
1408
|
-
*
|
|
1409
|
-
* @since 0.3.0
|
|
1410
|
-
*/
|
|
1411
|
-
auth(message) {
|
|
1412
|
-
this.badge("AUTH");
|
|
1413
|
-
this.error(message);
|
|
1414
|
-
}
|
|
1415
|
-
/**
|
|
1416
|
-
* Registra advertencias de deprecación
|
|
1417
|
-
*
|
|
1418
|
-
* @param {string} message - Mensaje de deprecación
|
|
1419
|
-
*
|
|
1420
|
-
* @example
|
|
1421
|
-
* api.deprecated('Este endpoint será eliminado en v2.0');
|
|
1422
|
-
* api.deprecated('Usar /v2/users en lugar de /users');
|
|
1423
|
-
*
|
|
1424
|
-
* @since 0.3.0
|
|
1425
|
-
*/
|
|
1426
|
-
deprecated(message) {
|
|
1427
|
-
this.badge("DEPRECATED");
|
|
1428
|
-
this.warn(message);
|
|
1429
|
-
}
|
|
1430
|
-
}
|
|
1431
|
-
class ComponentLogger extends ScopedLogger {
|
|
1432
|
-
constructor(parentLogger, componentName, config) {
|
|
1433
|
-
super(parentLogger, componentName, config);
|
|
1434
|
-
this.badge("COMPONENT");
|
|
1435
|
-
}
|
|
1436
|
-
/**
|
|
1437
|
-
* Registra eventos del ciclo de vida del componente
|
|
1438
|
-
*
|
|
1439
|
-
* @param {string} event - Nombre del evento (mounted, unmounted, updated, etc)
|
|
1440
|
-
* @param {string} message - Mensaje adicional (opcional)
|
|
1441
|
-
*
|
|
1442
|
-
* @example
|
|
1443
|
-
* component.lifecycle('mounted', 'Componente listo');
|
|
1444
|
-
* component.lifecycle('beforeDestroy');
|
|
1445
|
-
*
|
|
1446
|
-
* @since 0.3.0
|
|
1447
|
-
*/
|
|
1448
|
-
lifecycle(event, message) {
|
|
1449
|
-
this.badge("LIFECYCLE");
|
|
1450
|
-
const msg = message ? `${event}: ${message}` : event;
|
|
1451
|
-
this.info(msg);
|
|
1452
|
-
}
|
|
1453
|
-
/**
|
|
1454
|
-
* Registra cambios de estado
|
|
1455
|
-
*
|
|
1456
|
-
* @param {string} from - Estado anterior
|
|
1457
|
-
* @param {string} to - Estado nuevo
|
|
1458
|
-
* @param {any} data - Datos adicionales (opcional)
|
|
1459
|
-
*
|
|
1460
|
-
* @example
|
|
1461
|
-
* component.stateChange('idle', 'loading');
|
|
1462
|
-
* component.stateChange('loading', 'error', { code: 404 });
|
|
1463
|
-
*
|
|
1464
|
-
* @since 0.3.0
|
|
1465
|
-
*/
|
|
1466
|
-
stateChange(from, to, data) {
|
|
1467
|
-
this.badge("STATE");
|
|
1468
|
-
const msg = `${from} → ${to}`;
|
|
1469
|
-
if (data) {
|
|
1470
|
-
this.info(msg, data);
|
|
1471
|
-
} else {
|
|
1472
|
-
this.info(msg);
|
|
1473
|
-
}
|
|
1474
|
-
}
|
|
1475
|
-
/**
|
|
1476
|
-
* Registra cambios en las propiedades
|
|
1477
|
-
*
|
|
1478
|
-
* @param {Record<string, any>} changes - Objeto con los cambios
|
|
1479
|
-
*
|
|
1480
|
-
* @example
|
|
1481
|
-
* component.propsChange({
|
|
1482
|
-
* user: newUser,
|
|
1483
|
-
* isActive: true
|
|
1484
|
-
* });
|
|
1485
|
-
*
|
|
1486
|
-
* @since 0.3.0
|
|
1487
|
-
*/
|
|
1488
|
-
propsChange(changes) {
|
|
1489
|
-
this.badge("PROPS");
|
|
1490
|
-
this.debug("Props changed:", changes);
|
|
1491
|
-
}
|
|
1492
|
-
}
|
|
1493
|
-
class ContextLogger {
|
|
1494
|
-
parentLogger;
|
|
1495
|
-
contextName;
|
|
1496
|
-
constructor(parentLogger, contextName) {
|
|
1497
|
-
this.parentLogger = parentLogger;
|
|
1498
|
-
this.contextName = contextName;
|
|
1499
|
-
}
|
|
1500
|
-
/**
|
|
1501
|
-
* Ejecuta una función con este contexto activo
|
|
1502
|
-
*
|
|
1503
|
-
* @template T - Tipo de retorno de la función
|
|
1504
|
-
* @param {Function} fn - Función a ejecutar
|
|
1505
|
-
* @returns {T} Resultado de la función
|
|
1506
|
-
*
|
|
1507
|
-
* @example
|
|
1508
|
-
* const result = logger.context('Process').run(() => {
|
|
1509
|
-
* logger.info('Procesando...');
|
|
1510
|
-
* return processData();
|
|
1511
|
-
* });
|
|
1512
|
-
*
|
|
1513
|
-
* @since 0.3.0
|
|
1514
|
-
*/
|
|
1515
|
-
run(fn) {
|
|
1516
|
-
this.parentLogger._pushContext(this.contextName);
|
|
1517
|
-
try {
|
|
1518
|
-
return fn();
|
|
1519
|
-
} finally {
|
|
1520
|
-
this.parentLogger._popContext();
|
|
1521
|
-
}
|
|
1522
|
-
}
|
|
1523
|
-
/**
|
|
1524
|
-
* Run an async function with this context active
|
|
1525
|
-
*/
|
|
1526
|
-
async runAsync(fn) {
|
|
1527
|
-
this.parentLogger._pushContext(this.contextName);
|
|
1528
|
-
try {
|
|
1529
|
-
return await fn();
|
|
1530
|
-
} finally {
|
|
1531
|
-
this.parentLogger._popContext();
|
|
1532
|
-
}
|
|
1533
|
-
}
|
|
1534
|
-
/**
|
|
1535
|
-
* Start the context (manual mode)
|
|
1536
|
-
*/
|
|
1537
|
-
start() {
|
|
1538
|
-
this.parentLogger._pushContext(this.contextName);
|
|
1539
|
-
}
|
|
1540
|
-
/**
|
|
1541
|
-
* End the context (manual mode)
|
|
1542
|
-
*/
|
|
1543
|
-
end() {
|
|
1544
|
-
this.parentLogger._popContext();
|
|
1545
|
-
}
|
|
1546
|
-
// Delegate logging methods to parent with context
|
|
1547
|
-
debug(...args) {
|
|
1548
|
-
this.parentLogger.debug(...args);
|
|
1549
|
-
}
|
|
1550
|
-
info(...args) {
|
|
1551
|
-
this.parentLogger.info(...args);
|
|
1552
|
-
}
|
|
1553
|
-
warn(...args) {
|
|
1554
|
-
this.parentLogger.warn(...args);
|
|
1555
|
-
}
|
|
1556
|
-
error(...args) {
|
|
1557
|
-
this.parentLogger.error(...args);
|
|
1558
|
-
}
|
|
1559
|
-
success(...args) {
|
|
1560
|
-
this.parentLogger.success(...args);
|
|
1561
|
-
}
|
|
1562
|
-
critical(...args) {
|
|
1563
|
-
this.parentLogger.critical(...args);
|
|
1564
|
-
}
|
|
1565
|
-
}
|
|
1566
1213
|
class ExportLogHandler {
|
|
1567
1214
|
buffer = [];
|
|
1568
1215
|
maxSize;
|
|
@@ -3050,6 +2697,32 @@ class Logger {
|
|
|
3050
2697
|
this.themeChangeListener = null;
|
|
3051
2698
|
}
|
|
3052
2699
|
}
|
|
2700
|
+
/**
|
|
2701
|
+
* Factory method para crear loggers con scope evitando dependencias circulares
|
|
2702
|
+
* @private
|
|
2703
|
+
* @param {string} type - Tipo de logger ('scope' | 'api' | 'component')
|
|
2704
|
+
* @param {string} name - Nombre del scope
|
|
2705
|
+
* @returns {Promise<any>} Logger con scope
|
|
2706
|
+
*/
|
|
2707
|
+
async createScopedLogger(type, name) {
|
|
2708
|
+
try {
|
|
2709
|
+
const { ScopedLogger, APILogger, ComponentLogger } = await import("./ScopedLogger-hS0qSkZD.js");
|
|
2710
|
+
switch (type) {
|
|
2711
|
+
case "component":
|
|
2712
|
+
return new ComponentLogger(this, name);
|
|
2713
|
+
case "api":
|
|
2714
|
+
return new APILogger(this, name);
|
|
2715
|
+
case "scope":
|
|
2716
|
+
default:
|
|
2717
|
+
return new ScopedLogger(this, name);
|
|
2718
|
+
}
|
|
2719
|
+
} catch (error2) {
|
|
2720
|
+
this.error("Failed to load ScopedLogger, using basic logger with prefix:", error2);
|
|
2721
|
+
const basicLogger = new Logger(this.getConfig());
|
|
2722
|
+
basicLogger.setGlobalPrefix(`${this.config.globalPrefix || ""}:${name}`);
|
|
2723
|
+
return basicLogger;
|
|
2724
|
+
}
|
|
2725
|
+
}
|
|
3053
2726
|
// ===== SIMPLIFIED API =====
|
|
3054
2727
|
/**
|
|
3055
2728
|
* Aplica un preset inteligente - funciona perfectamente sin configuración
|
|
@@ -3194,7 +2867,7 @@ class Logger {
|
|
|
3194
2867
|
* @since 0.3.0
|
|
3195
2868
|
*/
|
|
3196
2869
|
component(name) {
|
|
3197
|
-
return
|
|
2870
|
+
return this.createScopedLogger("component", name);
|
|
3198
2871
|
}
|
|
3199
2872
|
/**
|
|
3200
2873
|
* Crea un logger para APIs con badges automáticos
|
|
@@ -3214,7 +2887,7 @@ class Logger {
|
|
|
3214
2887
|
* @since 0.3.0
|
|
3215
2888
|
*/
|
|
3216
2889
|
api(name) {
|
|
3217
|
-
return
|
|
2890
|
+
return this.createScopedLogger("api", name);
|
|
3218
2891
|
}
|
|
3219
2892
|
/**
|
|
3220
2893
|
* Crea un logger con scope general y soporte de badges
|
|
@@ -3234,7 +2907,7 @@ class Logger {
|
|
|
3234
2907
|
* @since 0.3.0
|
|
3235
2908
|
*/
|
|
3236
2909
|
scope(name) {
|
|
3237
|
-
return
|
|
2910
|
+
return this.createScopedLogger("scope", name);
|
|
3238
2911
|
}
|
|
3239
2912
|
// ===== SIMPLE CUSTOMIZATION =====
|
|
3240
2913
|
/**
|
|
@@ -3794,15 +3467,25 @@ class Logger {
|
|
|
3794
3467
|
await this.cliProcessor.processCommand(command, this);
|
|
3795
3468
|
}
|
|
3796
3469
|
}
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3470
|
+
let _defaultLogger = null;
|
|
3471
|
+
function getDefaultLogger() {
|
|
3472
|
+
if (!_defaultLogger) {
|
|
3473
|
+
_defaultLogger = new Logger({
|
|
3474
|
+
verbosity: "info",
|
|
3475
|
+
enableColors: true,
|
|
3476
|
+
enableTimestamps: true,
|
|
3477
|
+
enableStackTrace: true,
|
|
3478
|
+
bufferSize: 1e3
|
|
3479
|
+
// Enable export functionality by default
|
|
3480
|
+
});
|
|
3481
|
+
try {
|
|
3482
|
+
displayInitBanner();
|
|
3483
|
+
} catch (error2) {
|
|
3484
|
+
}
|
|
3485
|
+
}
|
|
3486
|
+
return _defaultLogger;
|
|
3487
|
+
}
|
|
3488
|
+
getDefaultLogger();
|
|
3806
3489
|
export {
|
|
3807
3490
|
BANNER_VARIANTS as B,
|
|
3808
3491
|
ExportLogHandler as E,
|
|
@@ -3811,4 +3494,4 @@ export {
|
|
|
3811
3494
|
THEME_BANNERS as a,
|
|
3812
3495
|
displayInitBanner as d
|
|
3813
3496
|
};
|
|
3814
|
-
//# sourceMappingURL=Logger-
|
|
3497
|
+
//# sourceMappingURL=Logger-CTAaDeZi.js.map
|