@intlayer/config
Version:
Retrieve Intlayer configurations and manage environment variables for both server-side and client-side environments.
1 lines • 2.17 kB
Source Map (JSON)
{"version":3,"sources":["../../../src/envVariables/utils.ts"],"sourcesContent":["import { logger } from '../logger';\n\nfunction getEnvValue(\n value: unknown,\n type: 'boolean',\n verbose?: boolean\n): boolean | undefined;\nfunction getEnvValue(\n value: unknown,\n type: 'number',\n verbose?: boolean\n): number | undefined;\nfunction getEnvValue<T extends string>(\n value: unknown,\n type: 'string',\n verbose?: boolean\n): T | undefined;\nfunction getEnvValue<T>(\n value: unknown,\n type: 'object',\n verbose?: boolean\n): T | undefined;\nfunction getEnvValue<T>(\n value: unknown,\n type: 'array',\n verbose?: boolean\n): T[] | undefined;\nfunction getEnvValue(\n value: unknown,\n type: 'string' | 'boolean' | 'number' | 'object' | 'array',\n verbose = false\n) {\n try {\n switch (type) {\n case 'boolean':\n // Convert string to boolean explicitly\n return value === 'true' || value === '1';\n\n case 'number':\n // Convert string to number, return undefined if conversion fails\n return Number(value);\n\n case 'string':\n // Return the string directly\n return value ?? '';\n\n case 'object':\n case 'array':\n // Attempt to parse the value as JSON\n return JSON.parse(value as string);\n\n default:\n return undefined;\n }\n } catch (error) {\n // Log error and return undefined if any error occurs during parsing\n if (verbose) {\n logger(\n `Error parsing environment variable, parsing : ${((value ?? '') as string).toString()}`,\n { level: 'error' }\n );\n }\n return undefined;\n }\n}\n\nexport { getEnvValue };\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAuB;AA2BvB,SAAS,YACP,OACA,MACA,UAAU,OACV;AACA,MAAI;AACF,YAAQ,MAAM;AAAA,MACZ,KAAK;AAEH,eAAO,UAAU,UAAU,UAAU;AAAA,MAEvC,KAAK;AAEH,eAAO,OAAO,KAAK;AAAA,MAErB,KAAK;AAEH,eAAO,SAAS;AAAA,MAElB,KAAK;AAAA,MACL,KAAK;AAEH,eAAO,KAAK,MAAM,KAAe;AAAA,MAEnC;AACE,eAAO;AAAA,IACX;AAAA,EACF,SAAS,OAAO;AAEd,QAAI,SAAS;AACX;AAAA,QACE,kDAAmD,SAAS,IAAe,SAAS,CAAC;AAAA,QACrF,EAAE,OAAO,QAAQ;AAAA,MACnB;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;","names":[]}