@rpcbase/env 0.66.0 → 0.68.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ensureDefaultEnvFlags-C1vDaR9V.js +1 -0
- package/dist/ensureDefaultEnvFlags-C1vDaR9V.js.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/loadProcessEnv-C2ldVaD0.js +1 -0
- package/dist/loadProcessEnv-C2ldVaD0.js.map +1 -0
- package/dist/polyfill.js +1 -0
- package/dist/polyfill.js.map +1 -0
- package/dist/polyfill.node.js +1 -0
- package/dist/polyfill.node.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ensureDefaultEnvFlags-C1vDaR9V.js","sources":["../src/polyfillShared.ts","../src/ensureDefaultEnvFlags.ts"],"sourcesContent":["declare global {\n var __rb_env__: Record<string, unknown> | undefined\n}\n\nexport const cloneEnv = <T extends Record<string, unknown> | undefined>(source: T) => ({\n ...(source ?? {}),\n})\n\nexport const hasWindow = () => typeof globalThis === \"object\" && \"window\" in globalThis\n\nexport const hasRbEnv = () => typeof globalThis.__rb_env__ !== \"undefined\" && globalThis.__rb_env__ !== null\n\nexport {}\n","type EnvRecord = Record<string, unknown> | undefined\n\ntype MutableEnv = Record<string, unknown> & {\n SSR?: unknown\n DEV?: unknown\n PROD?: unknown\n MODE?: unknown\n BASE_URL?: unknown\n}\n\ntype FlagHints = {\n isServer: boolean\n modeHint?: string\n}\n\nconst pickMode = (modeHint: string | undefined, isServer: boolean) => {\n if (typeof modeHint === \"string\" && modeHint.length > 0) {\n return modeHint\n }\n\n if (typeof process !== \"undefined\" && typeof process.env?.NODE_ENV === \"string\") {\n return process.env.NODE_ENV\n }\n\n // Default to development when no hints are available to avoid accidentally\n // treating local/SSR dev runs as production just because NODE_ENV is unset.\n return \"development\"\n}\n\nexport const ensureDefaultEnvFlags = (env: EnvRecord, hints: FlagHints) => {\n if (!env) {\n return\n }\n\n const target = env as MutableEnv\n\n // Always reflect the current runtime; SSR flag can differ between server render\n // and client hydration, so overwrite instead of only setting once.\n target.SSR = hints.isServer\n\n if (typeof target.MODE !== \"string\" || target.MODE.length === 0) {\n target.MODE = pickMode(hints.modeHint, hints.isServer)\n }\n\n if (typeof target.DEV !== \"boolean\") {\n target.DEV = target.MODE === \"development\"\n }\n\n if (typeof target.PROD !== \"boolean\") {\n target.PROD = !target.DEV\n }\n\n if (typeof target.BASE_URL !== \"string\" || target.BASE_URL.length === 0) {\n target.BASE_URL = \"/\"\n }\n}\n\nexport default ensureDefaultEnvFlags\n"],"names":[],"mappings":"AAIO,MAAM,WAAW,CAAgD,YAAe;AAAA,EACrF,GAAI,UAAU,CAAA;AAChB;AAEO,MAAM,YAAY,MAAM,OAAO,eAAe,YAAY,YAAY;AAEtE,MAAM,WAAW,MAAM,OAAO,WAAW,eAAe,eAAe,WAAW,eAAe;ACKxG,MAAM,WAAW,CAAC,UAA8B,aAAsB;AACpE,MAAI,OAAO,aAAa,YAAY,SAAS,SAAS,GAAG;AACvD,WAAO;AAAA,EACT;AAEA,MAAI,OAAO,YAAY,eAAe,OAAO,QAAQ,KAAK,aAAa,UAAU;AAC/E,WAAO,QAAQ,IAAI;AAAA,EACrB;AAIA,SAAO;AACT;AAEO,MAAM,wBAAwB,CAAC,KAAgB,UAAqB;AACzE,MAAI,CAAC,KAAK;AACR;AAAA,EACF;AAEA,QAAM,SAAS;AAIf,SAAO,MAAM,MAAM;AAEnB,MAAI,OAAO,OAAO,SAAS,YAAY,OAAO,KAAK,WAAW,GAAG;AAC/D,WAAO,OAAO,SAAS,MAAM,UAAU,MAAM,QAAQ;AAAA,EACvD;AAEA,MAAI,OAAO,OAAO,QAAQ,WAAW;AACnC,WAAO,MAAM,OAAO,SAAS;AAAA,EAC/B;AAEA,MAAI,OAAO,OAAO,SAAS,WAAW;AACpC,WAAO,OAAO,CAAC,OAAO;AAAA,EACxB;AAEA,MAAI,OAAO,OAAO,aAAa,YAAY,OAAO,SAAS,WAAW,GAAG;AACvE,WAAO,WAAW;AAAA,EACpB;AACF;"}
|
package/dist/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { loadProcessEnv } from \"./loadProcessEnv\"\nimport { cloneEnv, hasRbEnv, hasWindow } from \"./polyfillShared\"\nimport { ensureDefaultEnvFlags } from \"./ensureDefaultEnvFlags\"\n\n\ntype EnvRecord = Record<string, string | boolean | undefined>\n\nconst resolveModeHint = () => {\n // When built with Vite the plugin rewrites import.meta.env to globalThis.__rb_env__,\n // so keep the optional chains to avoid blowing up when the bag is still undefined.\n if (typeof import.meta !== \"undefined\") {\n const mode = (import.meta as any)?.env?.MODE\n if (typeof mode === \"string\" && mode.length > 0) {\n return mode\n }\n }\n\n if (typeof process !== \"undefined\" && typeof process.env?.NODE_ENV === \"string\") {\n return process.env.NODE_ENV\n }\n\n return undefined\n}\n\nconst ensureRbEnv = () => {\n const isServer = !hasWindow()\n const modeHint = resolveModeHint()\n\n if (hasRbEnv()) {\n ensureDefaultEnvFlags(globalThis.__rb_env__, {\n isServer,\n modeHint,\n })\n return globalThis.__rb_env__\n }\n\n if (isServer) {\n loadProcessEnv()\n }\n\n const sourceEnv = isServer\n ? cloneEnv(typeof process === \"undefined\" ? undefined : process.env)\n : cloneEnv(typeof import.meta === \"undefined\" ? undefined : (import.meta as any)?.env)\n\n ensureDefaultEnvFlags(sourceEnv, {\n isServer,\n modeHint,\n })\n\n globalThis.__rb_env__ = sourceEnv\n\n return globalThis.__rb_env__\n}\n\nconst env = ensureRbEnv() as EnvRecord\n\nexport default env\n"],"names":[],"mappings":";;;AAOA,MAAM,kBAAkB,MAAM;AAG5B,MAAI,OAAO,gBAAgB,aAAa;AACtC,UAAM,OAAQ;AACd,QAAgC,KAAK,SAAS,GAAG;AAC/C,aAAO;AAAA,IACT;AAAA,EACF;AAEA,MAAI,OAAO,YAAY,eAAe,OAAO,QAAQ,KAAK,aAAa,UAAU;AAC/E,WAAO,QAAQ,IAAI;AAAA,EACrB;AAEA,SAAO;AACT;AAEA,MAAM,cAAc,MAAM;AACxB,QAAM,WAAW,CAAC,UAAA;AAClB,QAAM,WAAW,gBAAA;AAEjB,MAAI,YAAY;AACd,0BAAsB,WAAW,YAAY;AAAA,MAC3C;AAAA,MACA;AAAA,IAAA,CACD;AACD,WAAO,WAAW;AAAA,EACpB;AAEA,MAAI,UAAU;AACZ,mBAAA;AAAA,EACF;AAEA,QAAM,YAAY,WACd,SAAS,OAAO,YAAY,cAAc,SAAY,QAAQ,GAAG,IACjE,SAAS,OAAO,gBAAgB,cAAc,SAAa,wBAAwB;AAEvF,wBAAsB,WAAW;AAAA,IAC/B;AAAA,IACA;AAAA,EAAA,CACD;AAED,aAAW,aAAa;AAExB,SAAO,WAAW;AACpB;AAEA,MAAM,MAAM,YAAA;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loadProcessEnv-C2ldVaD0.js","sources":["../../../node_modules/dotenv-expand/lib/main.js","../src/loadProcessEnv.ts"],"sourcesContent":["'use strict'\n\nfunction _resolveEscapeSequences (value) {\n return value.replace(/\\\\\\$/g, '$')\n}\n\nfunction expandValue (value, processEnv, runningParsed) {\n const env = { ...runningParsed, ...processEnv } // process.env wins\n\n const regex = /(?<!\\\\)\\${([^{}]+)}|(?<!\\\\)\\$([A-Za-z_][A-Za-z0-9_]*)/g\n\n let result = value\n let match\n const seen = new Set() // self-referential checker\n\n while ((match = regex.exec(result)) !== null) {\n seen.add(result)\n\n const [template, bracedExpression, unbracedExpression] = match\n const expression = bracedExpression || unbracedExpression\n\n // match the operators `:+`, `+`, `:-`, and `-`\n const opRegex = /(:\\+|\\+|:-|-)/\n // find first match\n const opMatch = expression.match(opRegex)\n const splitter = opMatch ? opMatch[0] : null\n\n const r = expression.split(splitter)\n\n let defaultValue\n let value\n\n const key = r.shift()\n\n if ([':+', '+'].includes(splitter)) {\n defaultValue = env[key] ? r.join(splitter) : ''\n value = null\n } else {\n defaultValue = r.join(splitter)\n value = env[key]\n }\n\n if (value) {\n // self-referential check\n if (seen.has(value)) {\n result = result.replace(template, defaultValue)\n } else {\n result = result.replace(template, value)\n }\n } else {\n result = result.replace(template, defaultValue)\n }\n\n // if the result equaled what was in process.env and runningParsed then stop expanding\n if (result === runningParsed[key]) {\n break\n }\n\n regex.lastIndex = 0 // reset regex search position to re-evaluate after each replacement\n }\n\n return result\n}\n\nfunction expand (options) {\n // for use with progressive expansion\n const runningParsed = {}\n\n let processEnv = process.env\n if (options && options.processEnv != null) {\n processEnv = options.processEnv\n }\n\n // dotenv.config() ran before this so the assumption is process.env has already been set\n for (const key in options.parsed) {\n let value = options.parsed[key]\n\n // short-circuit scenario: process.env was already set prior to the file value\n if (processEnv[key] && processEnv[key] !== value) {\n value = processEnv[key]\n } else {\n value = expandValue(value, processEnv, runningParsed)\n }\n\n options.parsed[key] = _resolveEscapeSequences(value)\n\n // for use with progressive expansion\n runningParsed[key] = _resolveEscapeSequences(value)\n }\n\n for (const processKey in options.parsed) {\n processEnv[processKey] = options.parsed[processKey]\n }\n\n return options\n}\n\nmodule.exports.expand = expand\n","import dotenv from \"dotenv\"\nimport { expand } from \"dotenv-expand\"\n\n\nlet hasLoaded = false\n\nexport const loadProcessEnv = () => {\n if (typeof process === \"undefined\") {\n return undefined\n }\n\n if (!hasLoaded) {\n const result = dotenv.config({ quiet: true })\n expand(result)\n hasLoaded = true\n }\n\n return process.env\n}\n"],"names":["value","expand"],"mappings":";;;;;;AAEA,WAAS,wBAAyB,OAAO;AACvC,WAAO,MAAM,QAAQ,SAAS,GAAG;AAAA,EACnC;AAEA,WAAS,YAAa,OAAO,YAAY,eAAe;AACtD,UAAM,MAAM,EAAE,GAAG,eAAe,GAAG,WAAU;AAE7C,UAAM,QAAQ,WAAA,+DAAA,GAAA;AAEd,QAAI,SAAS;AACb,QAAI;AACJ,UAAM,OAAO,oBAAI,IAAG;AAEpB,YAAQ,QAAQ,MAAM,KAAK,MAAM,OAAO,MAAM;AAC5C,WAAK,IAAI,MAAM;AAEf,YAAM,CAAC,UAAU,kBAAkB,kBAAkB,IAAI;AACzD,YAAM,aAAa,oBAAoB;AAGvC,YAAM,UAAU;AAEhB,YAAM,UAAU,WAAW,MAAM,OAAO;AACxC,YAAM,WAAW,UAAU,QAAQ,CAAC,IAAI;AAExC,YAAM,IAAI,WAAW,MAAM,QAAQ;AAEnC,UAAI;AACJ,UAAIA;AAEJ,YAAM,MAAM,EAAE,MAAK;AAEnB,UAAI,CAAC,MAAM,GAAG,EAAE,SAAS,QAAQ,GAAG;AAClC,uBAAe,IAAI,GAAG,IAAI,EAAE,KAAK,QAAQ,IAAI;AAC7C,QAAAA,SAAQ;AAAA,MACd,OAAW;AACL,uBAAe,EAAE,KAAK,QAAQ;AAC9B,QAAAA,SAAQ,IAAI,GAAG;AAAA,MACrB;AAEI,UAAIA,QAAO;AAET,YAAI,KAAK,IAAIA,MAAK,GAAG;AACnB,mBAAS,OAAO,QAAQ,UAAU,YAAY;AAAA,QACtD,OAAa;AACL,mBAAS,OAAO,QAAQ,UAAUA,MAAK;AAAA,QAC/C;AAAA,MACA,OAAW;AACL,iBAAS,OAAO,QAAQ,UAAU,YAAY;AAAA,MACpD;AAGI,UAAI,WAAW,cAAc,GAAG,GAAG;AACjC;AAAA,MACN;AAEI,YAAM,YAAY;AAAA,IACtB;AAEE,WAAO;AAAA,EACT;AAEA,WAAS,OAAQ,SAAS;AAExB,UAAM,gBAAgB,CAAA;AAEtB,QAAI,aAAa,QAAQ;AACzB,QAAI,WAAW,QAAQ,cAAc,MAAM;AACzC,mBAAa,QAAQ;AAAA,IACzB;AAGE,eAAW,OAAO,QAAQ,QAAQ;AAChC,UAAI,QAAQ,QAAQ,OAAO,GAAG;AAG9B,UAAI,WAAW,GAAG,KAAK,WAAW,GAAG,MAAM,OAAO;AAChD,gBAAQ,WAAW,GAAG;AAAA,MAC5B,OAAW;AACL,gBAAQ,YAAY,OAAO,YAAY,aAAa;AAAA,MAC1D;AAEI,cAAQ,OAAO,GAAG,IAAI,wBAAwB,KAAK;AAGnD,oBAAc,GAAG,IAAI,wBAAwB,KAAK;AAAA,IACtD;AAEE,eAAW,cAAc,QAAQ,QAAQ;AACvC,iBAAW,UAAU,IAAI,QAAQ,OAAO,UAAU;AAAA,IACtD;AAEE,WAAO;AAAA,EACT;AAEA,OAAA,SAAwB;;;;AC7FxB,IAAI,YAAY;AAET,MAAM,iBAAiB,MAAM;AAClC,MAAI,OAAO,YAAY,aAAa;AAClC,WAAO;AAAA,EACT;AAEA,MAAI,CAAC,WAAW;AACd,UAAM,SAAS,OAAO,OAAO,EAAE,OAAO,MAAM;AAC5CC,gBAAAA,OAAO,MAAM;AACb,gBAAY;AAAA,EACd;AAEA,SAAO,QAAQ;AACjB;","x_google_ignoreList":[0]}
|
package/dist/polyfill.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polyfill.js","sources":["../src/polyfill.ts"],"sourcesContent":["import { cloneEnv, hasRbEnv, hasWindow } from \"./polyfillShared\"\nimport { ensureDefaultEnvFlags } from \"./ensureDefaultEnvFlags\"\n\n\nconst resolveViteEnv = () => {\n if (typeof __vite_env__ === \"undefined\") {\n return undefined\n }\n\n return __vite_env__\n}\n\nconst resolveImportMetaEnv = () =>\n typeof import.meta === \"undefined\" ? undefined : import.meta.env\n\nconst resolveModeHint = () => {\n const metaEnv = resolveImportMetaEnv()\n const metaMode = metaEnv?.MODE\n\n if (typeof metaMode === \"string\" && metaMode.length > 0) {\n return metaMode\n }\n\n if (typeof process !== \"undefined\" && typeof process.env?.NODE_ENV === \"string\") {\n return process.env.NODE_ENV\n }\n\n return undefined\n}\n\nconst ensureRbEnv = () => {\n const modeHint = resolveModeHint()\n const importMetaEnv = resolveImportMetaEnv()\n const isServer = !hasWindow()\n\n if (hasRbEnv()) {\n ensureDefaultEnvFlags(globalThis.__rb_env__, {\n isServer,\n modeHint,\n })\n return\n }\n\n const viteDefinedEnv = resolveViteEnv()\n\n const sourceEnv = viteDefinedEnv\n ? cloneEnv(viteDefinedEnv)\n : hasWindow()\n ? cloneEnv(importMetaEnv)\n : cloneEnv(typeof process === \"undefined\" ? undefined : process.env)\n\n ensureDefaultEnvFlags(sourceEnv, {\n isServer,\n modeHint,\n })\n\n globalThis.__rb_env__ = sourceEnv\n}\n\nensureRbEnv()\n\nexport {}\n"],"names":[],"mappings":";AAIA,MAAM,iBAAiB,MAAM;AAC3B,MAAI,OAAO,iBAAiB,aAAa;AACvC,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAEA,MAAM,uBAAuB,MAC3B,OAAO,gBAAgB,cAAc,SAAY,WAAW;AAE9D,MAAM,kBAAkB,MAAM;AAC5B,QAAM,UAAU,qBAAA;AAChB,QAAM,WAAW,SAAS;AAE1B,MAAI,OAAO,aAAa,YAAY,SAAS,SAAS,GAAG;AACvD,WAAO;AAAA,EACT;AAEA,MAAI,OAAO,YAAY,eAAe,OAAO,QAAQ,KAAK,aAAa,UAAU;AAC/E,WAAO,QAAQ,IAAI;AAAA,EACrB;AAEA,SAAO;AACT;AAEA,MAAM,cAAc,MAAM;AACxB,QAAM,WAAW,gBAAA;AACjB,QAAM,gBAAgB,qBAAA;AACtB,QAAM,WAAW,CAAC,UAAA;AAElB,MAAI,YAAY;AACd,0BAAsB,WAAW,YAAY;AAAA,MAC3C;AAAA,MACA;AAAA,IAAA,CACD;AACD;AAAA,EACF;AAEA,QAAM,iBAAiB,eAAA;AAEvB,QAAM,YAAY,iBACd,SAAS,cAAc,IACvB,cACE,SAAS,aAAa,IACtB,SAAS,OAAO,YAAY,cAAc,SAAY,QAAQ,GAAG;AAEvE,wBAAsB,WAAW;AAAA,IAC/B;AAAA,IACA;AAAA,EAAA,CACD;AAED,aAAW,aAAa;AAC1B;AAEA,YAAA;"}
|
package/dist/polyfill.node.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polyfill.node.js","sources":["../src/polyfill.node.ts"],"sourcesContent":["import { loadProcessEnv } from \"./loadProcessEnv\"\nimport { cloneEnv, hasRbEnv } from \"./polyfillShared\"\nimport { ensureDefaultEnvFlags } from \"./ensureDefaultEnvFlags\"\n\n\nconst resolveModeHint = () => {\n if (typeof process === \"undefined\") {\n return undefined\n }\n\n const mode = process.env?.NODE_ENV\n\n return typeof mode === \"string\" && mode.length > 0 ? mode : undefined\n}\n\nconst ensureServerEnv = () => {\n const modeHint = resolveModeHint()\n\n if (hasRbEnv()) {\n ensureDefaultEnvFlags(globalThis.__rb_env__, {\n isServer: true,\n modeHint,\n })\n return\n }\n\n loadProcessEnv()\n\n globalThis.__rb_env__ = cloneEnv(typeof process === \"undefined\" ? undefined : process.env)\n\n ensureDefaultEnvFlags(globalThis.__rb_env__, {\n isServer: true,\n modeHint,\n })\n}\n\nensureServerEnv()\n\nexport {}\n"],"names":[],"mappings":";;AAKA,MAAM,kBAAkB,MAAM;AAC5B,MAAI,OAAO,YAAY,aAAa;AAClC,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,QAAQ,KAAK;AAE1B,SAAO,OAAO,SAAS,YAAY,KAAK,SAAS,IAAI,OAAO;AAC9D;AAEA,MAAM,kBAAkB,MAAM;AAC5B,QAAM,WAAW,gBAAA;AAEjB,MAAI,YAAY;AACd,0BAAsB,WAAW,YAAY;AAAA,MAC3C,UAAU;AAAA,MACV;AAAA,IAAA,CACD;AACD;AAAA,EACF;AAEA,iBAAA;AAEA,aAAW,aAAa,SAAS,OAAO,YAAY,cAAc,SAAY,QAAQ,GAAG;AAEzF,wBAAsB,WAAW,YAAY;AAAA,IAC3C,UAAU;AAAA,IACV;AAAA,EAAA,CACD;AACH;AAEA,gBAAA;"}
|