{"version":3,"sources":["jsdelivr-header.js","/npm/rn-config-env@1.1.3/index.js"],"names":[],"mappings":"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","file":"/npm/rn-config-env@1.1.3/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/rn-config-env@1.1.3/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 { readFileSync, statSync } = require('fs')\nconst dotenv = require('dotenv')\n\nfunction parseDotenvFile(path, verbose = false) {\n  let content\n  try {\n    content = readFileSync(path)\n  } catch (error) {\n    // The env file does not exist.\n    if (verbose) {\n      console.error('rn-config-env:error:', error)\n    }\n\n    return {}\n  }\n\n  return dotenv.parse(content)\n}\n\nfunction safeObjectAssign(targetObject, sourceObject, exceptions = []) {\n  const keys = Object.keys(targetObject)\n  for (let i = 0, length = keys.length; i < length; i++) {\n    if (targetObject[keys[i]] && sourceObject[keys[i]]) {\n      targetObject[keys[i]] = sourceObject[keys[i]]\n    }\n  }\n\n  for (let j = 0, length = exceptions.length; j < length; j++) {\n    if (sourceObject[exceptions[j]]) {\n      targetObject[exceptions[j]] = sourceObject[exceptions[j]]\n    }\n  }\n\n  return targetObject\n}\n\nfunction mtime(filePath) {\n  try {\n    return statSync(filePath).mtimeMs\n  } catch {\n    return null\n  }\n}\n\nmodule.exports = (api, options) => {\n  const t = api.types\n  this.env = {}\n  options = {\n    moduleName: '@env',\n    safe: true,\n    verbose: true,\n    ...options,\n  }\n  const envMode = process.env.ENVMODE || 'development'\n\n  const envPath = `.env.${envMode}`\n\n  api.cache.using(() => mtime(envPath))\n\n  const dotenvTemporary = Object.assign({}, process.env)\n  if (options.safe) {\n    const envParsed = parseDotenvFile(envPath, options.verbose)\n\n    this.env = safeObjectAssign(envParsed, dotenvTemporary, [])\n\n    this.env.NODE_ENV = envMode || babelMode\n  } else {\n    dotenv.config({ path: envPath, silent: true, })\n    this.env = process.env\n    this.env = Object.assign(this.env, dotenvTemporary)\n  }\n\n  api.addExternalDependency(envPath)\n\n  return ({\n    name: 'rn-config-env',\n\n    pre() {\n      this.opts = {\n        moduleName: '@env',\n        safe: true,\n        verbose: false,\n        ...this.opts,\n      }\n\n      const dotenvTemporary = Object.assign({}, process.env)\n\n      if (this.opts.safe) {\n        const envParsed = parseDotenvFile(envPath, options.verbose)\n        this.env = safeObjectAssign(envParsed, dotenvTemporary, [])\n        this.env.NODE_ENV = process.env.ENVMODE || babelMode\n      } else {\n        dotenv.config({ path: envPath, silent: true, })\n        this.env = process.env\n        this.env = Object.assign(this.env, dotenvTemporary)\n      }\n    },\n\n    visitor: {\n      ImportDeclaration(path, { opts }) {\n        if (path.node.source.value === opts.moduleName) {\n          for (const [idx, specifier] of path.node.specifiers.entries()) {\n            if (specifier.type === 'ImportDefaultSpecifier') {\n              throw path.get('specifiers')[idx].buildCodeFrameError('Default import is not supported')\n            }\n\n            if (specifier.type === 'ImportNamespaceSpecifier') {\n              throw path.get('specifiers')[idx].buildCodeFrameError('Wildcard import is not supported')\n            }\n\n            if (specifier.imported && specifier.local) {\n              const importedId = specifier.imported.name\n              const localId = specifier.local.name\n              const binding = path.scope.getBinding(localId)\n              for (const refPath of binding.referencePaths) {\n                refPath.replaceWith(t.valueToNode(this.env[importedId]))\n              }\n            }\n          }\n\n          path.remove()\n        }\n      },\n      MemberExpression(path, { opts }) {\n        if (path.get('object').matchesPattern('process.env')) {\n          const key = path.toComputedKey()\n          if (t.isStringLiteral(key)) {\n            const importedId = key.value\n            const value = (opts.env && importedId in opts.env) ? opts.env[importedId] : process.env[importedId]\n\n            path.replaceWith(t.valueToNode(value))\n          }\n        }\n      },\n    },\n  })\n}"]}