@t3-oss/env-core
Advanced tools
Comparing version 0.2.3-canary.edd0ea5 to 0.3.1-canary.0371e4a
@@ -5,3 +5,3 @@ import z, { ZodType, ZodError, ZodObject } from 'zod'; | ||
type Simplify<T> = { | ||
[TKey in keyof T]: T[TKey]; | ||
[P in keyof T]: T[P]; | ||
} & {}; | ||
@@ -21,3 +21,3 @@ interface BaseOptions<TPrefix extends string, TServer extends Record<string, ZodType>, TClient extends Record<string, ZodType>> { | ||
runtimeEnvStrict?: never; | ||
runtimeEnv: Record<string, string | undefined>; | ||
runtimeEnv: Record<string, string | boolean | number | undefined>; | ||
} | ||
@@ -27,7 +27,7 @@ interface StrictOptions<TPrefix extends string, TServer extends Record<string, ZodType>, TClient extends Record<string, ZodType>> extends BaseOptions<TPrefix, TServer, TClient> { | ||
[TKey in keyof TClient]: TKey extends `${TPrefix}${string}` ? TKey : never; | ||
}[keyof TClient] | keyof TServer, string | undefined>; | ||
}[keyof TClient] | keyof TServer, string | boolean | number | undefined>; | ||
runtimeEnv?: never; | ||
} | ||
declare function createEnv<TPrefix extends string, TServer extends Record<string, ZodType> = NonNullable<unknown>, TClient extends Record<string, ZodType> = NonNullable<unknown>>(opts: LooseOptions<TPrefix, TServer, TClient> | StrictOptions<TPrefix, TServer, TClient>): Simplify<TClient extends Record<string, never> ? z.infer<ZodObject<TServer>> : TServer extends Record<string, never> ? z.infer<ZodObject<TClient>> : z.infer<ZodObject<TServer>> & z.infer<ZodObject<TClient>>>; | ||
declare function createEnv<TPrefix extends string, TServer extends Record<string, ZodType> = NonNullable<unknown>, TClient extends Record<string, ZodType> = NonNullable<unknown>>(opts: LooseOptions<TPrefix, TServer, TClient> | StrictOptions<TPrefix, TServer, TClient>): Simplify<z.infer<ZodObject<TServer>> & z.infer<ZodObject<TClient>>>; | ||
export { BaseOptions, ErrorMessage, LooseOptions, Simplify, StrictOptions, createEnv }; |
@@ -1,2 +0,2 @@ | ||
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }var _zod = require('zod'); var _zod2 = _interopRequireDefault(_zod);function g(e){let t=_nullishCoalesce(_nullishCoalesce(e.runtimeEnvStrict, () => (e.runtimeEnv)), () => (process.env));if(!!e.skipValidation)return t;let T=typeof e.client=="object"?e.client:{},o=_zod2.default.object(T),c=_zod2.default.object(e.server),s=_nullishCoalesce(e.isServer, () => (typeof window>"u")),a=c.merge(o),i=s?a.safeParse(t):o.safeParse(t),l=_nullishCoalesce(e.onValidationError, () => ((r=>{throw console.error("\u274C Invalid environment variables:",r.flatten().fieldErrors),new Error("Invalid environment variables")}))),v=_nullishCoalesce(e.onInvalidAccess, () => ((r=>{throw new Error("\u274C Attempted to access a server-side environment variable on the client")})));return i.success===!1?l(i.error):new Proxy(i.data,{get(r,n){if(typeof n=="string")return!s&&!n.startsWith(e.clientPrefix)?v(n):r[n]}})}exports.createEnv = g; | ||
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }var _zod = require('zod'); var _zod2 = _interopRequireDefault(_zod);function g(e){let t=_nullishCoalesce(_nullishCoalesce(e.runtimeEnvStrict, () => (e.runtimeEnv)), () => (process.env));if(!!e.skipValidation)return t;let a=typeof e.client=="object"?e.client:{},o=_zod2.default.object(a),T=_zod2.default.object(e.server),s=_nullishCoalesce(e.isServer, () => (typeof window>"u")),c=T.merge(o),i=s?c.safeParse(t):o.safeParse(t),l=_nullishCoalesce(e.onValidationError, () => ((r=>{throw console.error("\u274C Invalid environment variables:",r.flatten().fieldErrors),new Error("Invalid environment variables")}))),v=_nullishCoalesce(e.onInvalidAccess, () => ((r=>{throw new Error("\u274C Attempted to access a server-side environment variable on the client")})));return i.success===!1?l(i.error):new Proxy(i.data,{get(r,n){if(typeof n=="string")return!s&&!n.startsWith(e.clientPrefix)?v(n):r[n]}})}exports.createEnv = g; | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "@t3-oss/env-core", | ||
"version": "0.2.3-canary.edd0ea5", | ||
"version": "0.3.1-canary.0371e4a", | ||
"keywords": [ | ||
@@ -34,2 +34,3 @@ "create-t3-app", | ||
"peerDependencies": { | ||
"typescript": ">=4.7.2", | ||
"zod": "^3.0.0" | ||
@@ -36,0 +37,0 @@ }, |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
18237
2