@unkey/api
Version:
Developer-friendly & type-safe Typescript SDK specifically catered to leverage *@unkey/api* API.
44 lines • 1.1 kB
JavaScript
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
import * as z from "zod/v3";
import { dlv } from "./dlv.js";
export const envSchema = z.object({
UNKEY_ROOT_KEY: z.string().optional(),
UNKEY_DEBUG: z.coerce.boolean().optional(),
});
/**
* Checks for the existence of the Deno global object to determine the environment.
* @returns {boolean} True if the runtime is Deno, false otherwise.
*/
function isDeno() {
if ("Deno" in globalThis) {
return true;
}
return false;
}
let envMemo = undefined;
/**
* Reads and validates environment variables.
*/
export function env() {
if (envMemo) {
return envMemo;
}
let envObject = {};
if (isDeno()) {
envObject = globalThis.Deno?.env?.toObject?.() ?? {};
}
else {
envObject = dlv(globalThis, "process.env") ?? {};
}
envMemo = envSchema.parse(envObject);
return envMemo;
}
/**
* Clears the cached env object. Useful for testing with a fresh environment.
*/
export function resetEnv() {
envMemo = undefined;
}
//# sourceMappingURL=env.js.map