{"version":3,"sources":["jsdelivr-header.js","/npm/cl-print@3.0.2/index.js"],"names":[],"mappings":"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","file":"/npm/cl-print@3.0.2/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/cl-print@3.0.2/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","// const chalk = require('chalk');\r\n// const error = new Error();\r\n// console.log(error.stack);\r\n// const clc = require('cli-color');\r\nconst colors = require('colors');\r\nconst path = require('path');\r\n\r\nfunction logLocation(...data) {\r\n  if (!print_only_handler('cl')) {\r\n    return;\r\n  }\r\n  const error = new Error();\r\n  const stackLine = error.stack.split('\\n')[2]; // Get caller's frame\r\n  const lines = path.basename(stackLine).split(':');\r\n  const file_path = path.resolve(stackLine);\r\n  console.log(location_printable(file_path, lines[0], lines[1]).dim, ...data);\r\n}\r\n\r\nconst clConfig = {\r\n  printOnly: false,\r\n  onlyList: [],\r\n  silent:false,\r\n}\r\n\r\nfunction LogLoc(error) {\r\n  const stackLine = error.stack.split('\\n')[2]; // Get caller's frame\r\n  const lines = path.basename(stackLine).split(':');\r\n  const file_path = path.resolve(stackLine);\r\n  return [file_path, lines[0], lines[1]]\r\n}\r\nlogLocation.silent=(status)=>{\r\n clConfig.silent=status||false;\r\n console.log(status);\r\n return {\r\n  exclude:(list)=>{\r\n  console.log(list)\r\n\r\n  if (Array.isArray(list)) {\r\n    clConfig.onlyList = list;\r\n  }\r\n  else {\r\n    throw new Error('only pass array [] argument in .exclude([only array])'.bgRed)\r\n  }\r\n}\r\n }\r\n}\r\nlogLocation.silent.exclude=(list)=>{\r\n  console.log(list)\r\n\r\n  if (Array.isArray(list)) {\r\n    clConfig.onlyList = list;\r\n  }\r\n  else {\r\n    throw new Error('only pass array [] argument in .exclude([only array])'.bgRed)\r\n  }\r\n}\r\n// only\r\nlogLocation.only = (list) => {\r\n  clConfig.printOnly = true;\r\n  if (Array.isArray(list)) {\r\n    clConfig.onlyList = list;\r\n  }\r\n  else {\r\n    throw new Error('only pass array [] argument in cl.only([only array])'.bgRed)\r\n  }\r\n}\r\n\r\nlogLocation.only.close = () => {\r\n  clConfig.printOnly = false;\r\n}\r\nfunction print_only_handler (color)  {\r\n\r\n\r\n  if (clConfig.printOnly) { return clConfig.onlyList.includes(color); }\r\n  else { return true; }\r\n}\r\n\r\nlogLocation.id = (id) => {\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  return (...data) => {\r\n    if (!print_only_handler(id)) {\r\n      return;\r\n    }\r\n    console.log(location_printable(locations[0], locations[1], locations[2]).dim + `[${id}]`.blue, ...data);\r\n  }\r\n\r\n}\r\n\r\n\r\nlogLocation.help = () => {\r\n  console.log('\\n' + ' CL Console Log Helper '.bgBlue.white.bold + '\\n');\r\n\r\n  console.log('Purpose:'.cyan);\r\n  console.log('cl is a feature-rich alternative to console.log designed for developers who want better control, colors, locations, and filtering logs.\\n'.white);\r\n\r\n  console.log('Basic Usage:'.yellow);\r\n  console.log('cl(\"some data\")                      // normal log with file location'.white);\r\n  console.log('cl.info(\"info message\")              // info log in cyan color'.white);\r\n  console.log('cl.warn(\"warning message\")           // warning log in yellow color'.white);\r\n  console.log('cl.err(\"error message\")              // error log in red color'.white);\r\n  console.log('cl.red(\"log in red color\")           // custom colored log'.white);\r\n  console.log('cl.bgBlue(\"background blue log\")     // background colored log'.white);\r\n  console.log('\\n');\r\n\r\n  console.log('Advance Usage (Control logs):'.yellow);\r\n  console.log('\\n1) cl.only([...])'.cyan);\r\n  console.log('• Purpose: Control which types or ids of logs will be printed.'.white);\r\n  console.log('• Usage:'.white);\r\n  console.log('   cl.only([\"info\", \"warn\", \"red\"]);  // only these logs will print'.green);\r\n  console.log('• This is useful when you want to suppress unwanted logs during development or debugging.'.white);\r\n  console.log('• You can even pass custom ids defined via cl.id():'.white);\r\n  console.log('   cl.only([\"customID1\", \"warn\", \"bgRed\"]); // print only logs with these types or ids.\\n'.green);\r\n\r\n  console.log('To reset and print all logs again:'.white);\r\n  console.log('   cl.only.close();'.green);\r\n  console.log('\\n');\r\n\r\n  console.log('2) cl.id(\"customID\")(\"your data\")'.cyan);\r\n  console.log('• Purpose: Assign an ID to a specific log.'.white);\r\n  console.log('• Usage:'.white);\r\n  console.log('   const logWithId = cl.id(\"fetchData\");'.green);\r\n  console.log('   logWithId(\"API call result\");        // This log is marked as \"fetchData\"'.green);\r\n  console.log('• Now you can control this log using cl.only():'.white);\r\n  console.log('   cl.only([\"fetchData\"]);              // Only print logs with id \"fetchData\"'.green);\r\n  console.log('• This is very helpful when you want to enable/disable specific log points across large projects.\\n'.white);\r\n\r\n  console.log('3) Location Tracking:'.cyan);\r\n  console.log('• All logs automatically print their file name and line number for easy debugging.\\n'.white);\r\n\r\n  console.log('4) Colors & Styling:'.cyan);\r\n  console.log('• Available Text Colors: red, green, yellow, blue, magenta, cyan, white, black.'.white);\r\n  console.log('• Available Background Colors: bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgBlack.'.white);\r\n  console.log('• Example: cl.red(\"Error in this function\")'.green);\r\n  console.log('          cl.bgBlue(\"Important Section\")\\n'.green);\r\n\r\n  console.log('5) Highlight:'.cyan);\r\n  console.log('• cl.highlight(\"text\") adds a special highlight with background blue.'.white);\r\n\r\n  console.log('\\nFeature Request / Feedback:'.magenta);\r\n  console.log('GitHub: @gitkrishnaa'.white);\r\n  console.log('Email: krishna854192@gmail.com'.white);\r\n  console.log('Insta: @gitkrishnaa'.white);\r\n  console.log('X/Twitter: @gitkrishnaa\\n'.white);\r\n}\r\n\r\n\r\nlogLocation.info = function (...data) {\r\n\r\n  if (!print_only_handler('info')) {\r\n    return;\r\n  }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.info(location_printable(locations[0], locations[1], locations[2]).cyan + 'ℹ️ ', ...data);\r\n}\r\nlogLocation.warn = function (...data) {\r\n\r\n  if (!print_only_handler('warn')) {\r\n    return;\r\n  }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.info(location_printable(locations[0], locations[1], locations[2]).yellow + '⚠️ ', ...data);\r\n}\r\nlogLocation.err = function (...data) {\r\n\r\n  if (!print_only_handler('err')) {\r\n    return;\r\n  }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.info(location_printable(locations[0], locations[1], locations[2]).red + '❌', ...data);\r\n}\r\nlogLocation.error = function (...data) {\r\n\r\n  if (!print_only_handler('error')) {\r\n    return;\r\n  }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.info(location_printable(locations[0], locations[1], locations[2]).red + '❌', ...data);\r\n}\r\n\r\nlogLocation.debug = function (...data) {\r\n\r\n  if (!print_only_handler('error')) {\r\n    return;\r\n  }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.info(location_printable(locations[0], locations[1], locations[2]).red + '🛠️ ', ...data);\r\n}\r\n\r\n\r\n// colors\r\nlogLocation.red = function (...data) {\r\n\r\n  if (!print_only_handler('red')) {\r\n    return;\r\n  }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).red, ...data);\r\n}\r\nlogLocation.green = function (...data) {\r\n  if (!print_only_handler('green')) {\r\n    return;\r\n  }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).green, ...data);\r\n}\r\nlogLocation.yellow = function (...data) {\r\n  if (!print_only_handler('yellow')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).yellow, ...data);\r\n}\r\nlogLocation.blue = function (...data) {\r\n  if (!print_only_handler('blue')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).blue, ...data);\r\n}\r\nlogLocation.magenta = function (...data) {\r\n  if (!print_only_handler('magenta')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).magenta, ...data);\r\n}\r\nlogLocation.cyan = function (...data) {\r\n  if (!print_only_handler('cyan')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).cyan, ...data);\r\n}\r\nlogLocation.white = function (...data) {\r\n  if (!print_only_handler('white')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).white, ...data);\r\n}\r\nlogLocation.black = function (...data) {\r\n  if (!print_only_handler('black')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).black, ...data);\r\n}\r\nlogLocation.bgRed = function (...data) {\r\n  if (!print_only_handler('bgRed')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgRed, ...data);\r\n}\r\nlogLocation.bgGreen = function (...data) {\r\n  if (!print_only_handler('bgGreen')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgGreen, ...data);\r\n}\r\nlogLocation.bgYellow = function (...data) {\r\n  if (!print_only_handler('bgYellow')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgYellow, ...data);\r\n}\r\nlogLocation.bgBlue = function (...data) {\r\n  if (!print_only_handler('bgBlue')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgBlue, ...data);\r\n}\r\nlogLocation.bgMagenta = function (...data) {\r\n  if (!print_only_handler('bgMagenta')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgMagenta, ...data);\r\n}\r\nlogLocation.bgCyan = function (...data) {\r\n  if (!print_only_handler('bgCyan')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgCyan, ...data);\r\n}\r\nlogLocation.bgWhite = function (...data) {\r\n  if (!print_only_handler('bgWhite')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgWhite, ...data);\r\n}\r\nlogLocation.bgBlack = function (...data) {\r\n  if (!print_only_handler('bgBlack')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2]).bgBlack, ...data);\r\n}\r\nlogLocation.highlight = function (...data) {\r\n  if (!print_only_handler('highlight')) { return }\r\n  const error = new Error(); const locations = LogLoc(error);\r\n  console.log(location_printable(locations[0], locations[1], locations[2], '>>>>>').bgBlue, ...data);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nmodule.exports.cl = logLocation\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nfunction location_printable(location, filePath, line = 1, extratext = '') {\r\n  const absolutePath = path.resolve(location);\r\n  // console.log()\r\n  let arr = absolutePath.split(' ')\r\n  const filename = path.basename(filePath)\r\n  // console.log(\"absolutePath\",absolutePath,\"filename\",filename)\r\n  return `\\u001b]8;;${arr[arr.length - 1]}\\u0007[${filename}:${line}]\\u001b]8;;\\u0007` + extratext;\r\n}\r\n\r\n\r\n"]}