12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.getEnvironmentVariable = exports.getRuntimeEnvironment = exports.getEnv = exports.isNode = exports.isDeno = exports.isJsDom = exports.isWebWorker = exports.isBrowser = void 0;
- const isBrowser = () => typeof window !== "undefined" && typeof window.document !== "undefined";
- exports.isBrowser = isBrowser;
- const isWebWorker = () => typeof globalThis === "object" &&
- globalThis.constructor &&
- globalThis.constructor.name === "DedicatedWorkerGlobalScope";
- exports.isWebWorker = isWebWorker;
- const isJsDom = () => (typeof window !== "undefined" && window.name === "nodejs") ||
- (typeof navigator !== "undefined" &&
- (navigator.userAgent.includes("Node.js") ||
- navigator.userAgent.includes("jsdom")));
- exports.isJsDom = isJsDom;
- // Supabase Edge Function provides a `Deno` global object
- // without `version` property
- const isDeno = () => typeof Deno !== "undefined";
- exports.isDeno = isDeno;
- // Mark not-as-node if in Supabase Edge Function
- const isNode = () => typeof process !== "undefined" &&
- typeof process.versions !== "undefined" &&
- typeof process.versions.node !== "undefined" &&
- !(0, exports.isDeno)();
- exports.isNode = isNode;
- const getEnv = () => {
- let env;
- if ((0, exports.isBrowser)()) {
- env = "browser";
- }
- else if ((0, exports.isNode)()) {
- env = "node";
- }
- else if ((0, exports.isWebWorker)()) {
- env = "webworker";
- }
- else if ((0, exports.isJsDom)()) {
- env = "jsdom";
- }
- else if ((0, exports.isDeno)()) {
- env = "deno";
- }
- else {
- env = "other";
- }
- return env;
- };
- exports.getEnv = getEnv;
- let runtimeEnvironment;
- async function getRuntimeEnvironment() {
- if (runtimeEnvironment === undefined) {
- const env = (0, exports.getEnv)();
- runtimeEnvironment = {
- library: "langchain-js",
- runtime: env,
- };
- }
- return runtimeEnvironment;
- }
- exports.getRuntimeEnvironment = getRuntimeEnvironment;
- function getEnvironmentVariable(name) {
- // Certain Deno setups will throw an error if you try to access environment variables
- // https://github.com/langchain-ai/langchainjs/issues/1412
- try {
- if (typeof process !== "undefined") {
- // eslint-disable-next-line no-process-env
- return process.env?.[name];
- }
- else if ((0, exports.isDeno)()) {
- return Deno?.env.get(name);
- }
- else {
- return undefined;
- }
- }
- catch (e) {
- return undefined;
- }
- }
- exports.getEnvironmentVariable = getEnvironmentVariable;
|