{"version":3,"file":"environment-guard.js","names":[],"sources":["esm/babel-plugins/environment-guard.js"],"sourcesContent":["import * as t from \"@babel/types\";\nconst GUARD_SPECIFIERS = [\n  \"server-only\",\n  \"client-only\",\n  \"native-only\",\n  \"web-only\"\n];\nconst ALLOWED_IN_NATIVE = [\"native-only\"];\nfunction environmentGuardBabelPlugin(_) {\n  return {\n    name: \"one-environment-guard\",\n    visitor: {\n      ImportDeclaration(path) {\n        const source = path.node.source.value;\n        if (!GUARD_SPECIFIERS.includes(source)) return;\n        if (ALLOWED_IN_NATIVE.includes(source)) {\n          path.remove();\n        } else {\n          path.replaceWith(\n            t.throwStatement(\n              t.newExpression(t.identifier(\"Error\"), [\n                t.stringLiteral(`${source} cannot be imported in a native environment`)\n              ])\n            )\n          );\n        }\n      }\n    }\n  };\n}\nvar environment_guard_default = environmentGuardBabelPlugin;\nexport {\n  environment_guard_default as default\n};\n//# sourceMappingURL=environment-guard.js.map\n"],"mappings":";;;AACA,MAAM,mBAAmB;CACvB;CACA;CACA;CACA;AACF;AACA,MAAM,oBAAoB,CAAC,aAAa;AACxC,SAAS,4BAA4B,GAAG;CACtC,OAAO;EACL,MAAM;EACN,SAAS,EACP,kBAAkB,MAAM;GACtB,MAAM,SAAS,KAAK,KAAK,OAAO;GAChC,IAAI,CAAC,iBAAiB,SAAS,MAAM,GAAG;GACxC,IAAI,kBAAkB,SAAS,MAAM,GAAG;IACtC,KAAK,OAAO;GACd,OAAO;IACL,KAAK,YACH,EAAE,eACA,EAAE,cAAc,EAAE,WAAW,OAAO,GAAG,CACrC,EAAE,cAAc,GAAG,OAAO,4CAA4C,CACxE,CAAC,CACH,CACF;GACF;EACF,EACF;CACF;AACF;AACA,IAAI,4BAA4B"}