{"version":3,"sources":["jsdelivr-header.js","/npm/env2@2.2.2/lib/env.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,GAAO,QAAQ,MACf,KAAO,QAAQ,QA4DnB,SAAS,YAAa,GACpB,OAAO,mBAAmB,GAAG,aAAa,KAAK,QAAQ,GAAW,QACpE,CAEA,SAAS,mBAAoB,GAC3B,OAAO,EAAQ,MAAM,MAChB,IAAI,MACJ,QAAO,SAAS,GAAO,OAAO,EAAK,MAAQ,IAC3C,OAAO,cACP,OAAO,yBAA0B,CAAC,EACzC,CAEA,SAAS,KAAM,GACb,OAAO,EAAO,MAChB,CAEA,SAAS,aAAc,GACrB,MAAmB,MAAZ,EAAK,EACd,CAEA,SAAS,SAAU,GACjB,OAAO,KAAK,MAAM,GAAG,aAAa,GACpC,CAEA,SAAS,yBAA0B,EAAM,GACvC,IAAI,EAAoB,EAAa,QAAQ,SAAS,IAAI,MAAM,KAEhE,OADA,EAAK,EAAkB,GAAG,QAAU,EAAkB,MAAM,GAAG,KAAK,KAAK,OAClE,CACT,CAhFA,OAAO,QAAU,SAA+C,GAC9D,IACE,IAAI,EAAmB,OAAO,OAAO,GACjC,EAAmB,EAAc,QAAQ,gBACzC,EAAmB,EAAc,MAAM,EAAE,GAC7C,GAAG,EAEC,EADC,GAAoB,EACV,KAAK,QAAQ,EAAkB,GAG/B,KAAK,QAAQ,QAIhB,GAAG,YAAY,GACrB,SAAQ,SAAS,GAChB,EAAK,QAAQ,SAAW,IACzB,EAAW,EAAmB,EAElC,IAEF,IACI,IAD2C,IAA9B,EAAS,QAAQ,QAAiB,YAAc,UAC5C,GACrB,OAAO,KAAK,GAAK,SAAQ,SAAS,GAC5B,QAAQ,IAAI,KACd,QAAQ,IAAI,GAAK,EAAI,GAEzB,GACF,CACA,MAAO,GACL,IAAI,EAAY,EAAM,UAAgD,IAArC,EAAM,QAAQ,QAAQ,UAInD,EAAW,QACX,EAAW,OAEX,EAAW,aACX,EAAW,aAGX,EAAM,EAAO,EAAU,aAAe,EAO1C,OANA,GAAU,EAAU,4CACpB,GAAU,cAAe,EAAW,IAAM,EAAO,GAZ5B,EAAY,eAAiB,mBAalD,GAAU,EAAQ,EAAS,IAC3B,GAAU,iDAEV,QAAQ,KAAK,GACN,CACT,CACF,EAgCA,QAAQ,QAAU,QAAQ,mBAAmB","file":"/npm/env2@2.2.2/lib/env.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/env2@2.2.2/lib/env.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","var fs   = require('fs');\nvar path = require('path');\n\n/**\n * load_environment_variables_from_file does exactly what its name suggests\n * attempts to load a file containing a list of enviroment variables\n * @param {String} filepath - the path to your env.json or .env file\n * try/catch has a nice stack trace if we fail to find/load your the file\n */\nmodule.exports = function load_environment_variables_from_file (filepath) {\n  try { // first we determine how to find the env.json or config.env file\n    var module_callee    = module.parent.id;\n    var called_by_module = module_callee.indexOf('node_modules');\n    var parent_directory = module_callee.slice(0,called_by_module);\n    if(filepath) { // if required without a config.env file we search for one!\n      if(called_by_module > -1){\n        filepath = path.resolve(parent_directory, filepath);\n      }\n      else {\n        filepath = path.resolve(filepath);\n      }\n    }\n    else { // https://github.com/dwyl/env2/issues/6\n      var dir = fs.readdirSync(parent_directory); // list of files in dir\n      dir.forEach(function(file) {  // search for a .env file in dir\n        if(file.indexOf('.env') > -1) { // found a .env file? use it!\n          filepath = parent_directory + file;\n        }\n      })\n    }\n    var env_getter = filepath.indexOf('.env') !== -1 ? get_dot_env : get_JSON;\n    var env = env_getter(filepath);\n    Object.keys(env).forEach(function(k) {\n      if(!process.env[k]) { // allow enviroment to take precedence over env.json\n        process.env[k] = env[k]; // only set if not set by environment\n      }\n    });\n  }\n  catch (error) {\n    var is_enoent = error.message && error.message.indexOf('ENOENT') !== -1\n    var message_detail = is_enoent ? ' NOT FOUND! ' : ' INVALID JSON! '\n    // we're defining our own styles to avoid dependencies.\n    // if you are curious how this works see: github.com/chalk/ansi-styles\n    var reset    = '\\u001b[22m';\n    var bold     = '\\u001b[1m';\n    var cyanBg   = '\\u001b[46m' + '\\u001b[30m'; // Background Cyan Font Black\n    var greenBg  = '\\u001b[42m' + '\\u001b[30m'; // Background Green Font Black\n    var warning  = '\\u001b[43m' + '\\u001b[30m'; // Background Green Font Black\n    var endStyle = '\\u001b[49m' + '\\u001b[39m' + '\\u001b[22m'; // reset terminal\n\n    var msg = bold + warning + ' WARNING: ' + reset\n    msg    += greenBg + ' env2 was required to load an .env file: '\n    msg    += cyanBg + ' ' + filepath + ' ' + bold + warning + message_detail\n    msg    += reset + greenBg +' '\n    msg    += 'Please see: http://git.io/vG3UZ'+ endStyle\n\n    console.warn(msg);\n    return msg;\n  }\n};\n\nfunction get_dot_env (filepath) {\n  return make_json_from_dot(fs.readFileSync(path.resolve(filepath), 'utf8'));\n}\n\nfunction make_json_from_dot (dot_env) {\n  return dot_env.split('\\n')\n      .map(trim)\n      .filter(function(line){ return line.length; })\n      .filter(isNotComment)\n      .reduce(add_dot_env_line_to_json, {});\n}\n\nfunction trim (string) {\n  return string.trim();\n}\n\nfunction isNotComment (line) {\n  return line[0] !== '#';\n}\n\nfunction get_JSON (path) {\n  return JSON.parse(fs.readFileSync(path))\n}\n\nfunction add_dot_env_line_to_json (json, env_variable) {\n  var environment_parts = env_variable.replace('export','').split('=');\n  json[environment_parts[0].trim()] = environment_parts.slice(1).join('=').trim();\n  return json;\n}\n\nexports.version = require('../package.json').version;\n"]}