{"version":3,"file":"log-config.cjs","names":["isString","isNumber"],"sources":["../../../src/common/log/log-config.ts"],"sourcesContent":["import type { LoggerInterface, LogLevelAliasType } from './log-base'\nimport { isNumber, isString } from '../data/is'\n\n/**\n * Simple log configuration for use in modular scenarios.\n *\n * `LogConfig` can be of various types:\n *\n * 1. `LoggerInterface`: Just a complete logger howeveryou like it\n * 2. `true`: The default logger on\n * 3. `string`: Logger with name\n * 4. `number`: Logger with level e.g. set to `0` to see all\n *\n * All others turn it off.\n */\nexport type LogConfig = LoggerInterface | string | number | null | undefined | boolean\n\n/** See LogConfig */\nexport function _LoggerFromConfig(\n  Logger: (name?: string, level?: LogLevelAliasType) => LoggerInterface,\n  config: LogConfig,\n  name: string,\n  level?: LogLevelAliasType,\n): LoggerInterface {\n  if (config === true)\n    return Logger(name, level)\n  if (isString(config) && config.length > 0)\n    return Logger(config, level)\n  if (isNumber(config))\n    return Logger(name, config)\n  if (typeof config === 'function')\n    return config\n  return Logger(name, false)\n}\n"],"mappings":";;;;;AAkBA,SAAgB,kBACd,QACA,QACA,MACA,OACiB;AACjB,KAAI,WAAW,KACb,QAAO,OAAO,MAAM,MAAM;AAC5B,KAAIA,gCAAS,OAAO,IAAI,OAAO,SAAS,EACtC,QAAO,OAAO,QAAQ,MAAM;AAC9B,KAAIC,gCAAS,OAAO,CAClB,QAAO,OAAO,MAAM,OAAO;AAC7B,KAAI,OAAO,WAAW,WACpB,QAAO;AACT,QAAO,OAAO,MAAM,MAAM"}