UNPKG

@intlayer/config

Version:

Retrieve Intlayer configurations and manage environment variables for both server-side and client-side environments.

1 lines 6.23 kB
{"version":3,"sources":["../../../../src/envVariables/extractEnvVariable/vite.ts"],"sourcesContent":["import { logger } from '../../logger';\nimport type {\n AiConfig,\n BuildConfig,\n ContentConfig,\n EditorConfig,\n InternationalizationConfig,\n LogConfig,\n MiddlewareConfig,\n} from '../../types/config';\nimport type { IntlayerConfigEnvVariable, ReplaceValue } from './types';\nimport { extractEmptyEnvVariable } from './undefined_platform';\n\nexport const extractViteEnvVariable = (): IntlayerConfigEnvVariable => {\n if (!import.meta.env) {\n logger('Vite env variables cannot be loaded on a commonjs environment.', {\n level: 'error',\n });\n return extractEmptyEnvVariable();\n }\n\n const internationalization: ReplaceValue<InternationalizationConfig> = {\n locales: import.meta.env.VITE_INTLAYER_LOCALES,\n requiredLocales: import.meta.env.VITE_INTLAYER_REQUIRED_LOCALES,\n strictMode: import.meta.env.VITE_INTLAYER_STRICT_MODE,\n defaultLocale: import.meta.env.VITE_INTLAYER_DEFAULT_LOCALE,\n };\n\n const middleware: ReplaceValue<MiddlewareConfig> = {\n headerName: import.meta.env.VITE_INTLAYER_HEADER_NAME,\n cookieName: import.meta.env.VITE_INTLAYER_COOKIE_NAME,\n prefixDefault: import.meta.env.VITE_INTLAYER_PREFIX_DEFAULT,\n basePath: import.meta.env.VITE_INTLAYER_BASE_PATH,\n serverSetCookie: import.meta.env.VITE_INTLAYER_SERVER_SET_COOKIE,\n noPrefix: import.meta.env.VITE_INTLAYER_NO_PREFIX,\n };\n\n const content: ReplaceValue<ContentConfig> = {\n fileExtensions: import.meta.env.VITE_INTLAYER_FILE_EXTENSIONS,\n baseDir: import.meta.env.VITE_INTLAYER_BASE_DIR,\n contentDir: import.meta.env.VITE_INTLAYER_CONTENT_DIR,\n excludedPath: import.meta.env.VITE_INTLAYER_EXCLUDED_PATH,\n dictionariesDir: import.meta.env.VITE_INTLAYER_RESULT_DIR,\n moduleAugmentationDir: import.meta.env\n .VITE_INTLAYER_MODULE_AUGMENTATION_DIR,\n unmergedDictionariesDir: import.meta.env\n .VITE_INTLAYER_UNMERGED_DICTIONARIES_DIR,\n dynamicDictionariesDir: import.meta.env\n .VITE_INTLAYER_DYNAMIC_DICTIONARIES_DIR,\n i18nextResourcesDir: import.meta.env.VITE_INTLAYER_I18N_DICTIONARIES_DIR,\n reactIntlMessagesDir: import.meta.env\n .VITE_INTLAYER_REACT_INTL_DICTIONARIES_DIR,\n typesDir: import.meta.env.VITE_INTLAYER_TYPE_DIR,\n mainDir: import.meta.env.VITE_INTLAYER_MAIN_DIR,\n configDir: import.meta.env.VITE_INTLAYER_CONFIG_DIR,\n watchedFilesPattern: import.meta.env.VITE_INTLAYER_WATCHED_FILES_PATTERN,\n watchedFilesPatternWithPath: import.meta.env\n .VITE_INTLAYER_WATCHED_FILES_PATTERN_WITH_PATH,\n outputFilesPatternWithPath: import.meta.env\n .VITE_INTLAYER_OUTPUT_FILES_PATTERN_WITH_PATH,\n dictionaryOutput: import.meta.env.VITE_INTLAYER_DICTIONARY_OUTPUT,\n watch: import.meta.env.VITE_INTLAYER_WATCH,\n };\n\n const editor: ReplaceValue<EditorConfig> = {\n applicationURL: import.meta.env.VITE_INTLAYER_APPLICATION_URL,\n editorURL: import.meta.env.VITE_INTLAYER_EDITOR_URL,\n cmsURL: import.meta.env.VITE_INTLAYER_CMS_URL,\n backendURL: import.meta.env.VITE_INTLAYER_BACKEND_URL,\n port: import.meta.env.VITE_INTLAYER_PORT,\n enabled: import.meta.env.VITE_INTLAYER_ENABLED,\n clientId: import.meta.env.VITE_INTLAYER_CLIENT_ID,\n clientSecret: import.meta.env.VITE_INTLAYER_CLIENT_SECRET,\n dictionaryPriorityStrategy: import.meta.env\n .VITE_INTLAYER_DICTIONARY_PRIORITY_STRATEGY,\n hotReload: import.meta.env.VITE_INTLAYER_HOT_RELOAD,\n };\n\n const log: ReplaceValue<LogConfig> = {\n mode: import.meta.env.VITE_INTLAYER_LOG_MODE,\n prefix: import.meta.env.VITE_INTLAYER_LOG_PREFIX,\n };\n\n const ai: ReplaceValue<AiConfig> = {\n provider: import.meta.env.VITE_INTLAYER_AI_PROVIDER,\n model: import.meta.env.VITE_INTLAYER_AI_MODEL,\n temperature: import.meta.env.VITE_INTLAYER_AI_TEMPERATURE,\n apiKey: import.meta.env.VITE_INTLAYER_AI_API_KEY,\n applicationContext: import.meta.env.VITE_INTLAYER_AI_APPLICATION_CONTEXT,\n };\n\n const build: ReplaceValue<BuildConfig> = {\n optimize: import.meta.env.VITE_INTLAYER_BUILD_OPTIMIZE,\n activateDynamicImport: import.meta.env\n .VITE_INTLAYER_BUILD_ACTIVATE_DYNAMIC_IMPORT,\n traversePattern: import.meta.env.VITE_INTLAYER_BUILD_TRAVERSE_PATTERN,\n };\n\n return {\n internationalization,\n middleware,\n content,\n editor,\n log,\n ai,\n build,\n };\n};\n"],"mappings":"AAAA,SAAS,cAAc;AAWvB,SAAS,+BAA+B;AAEjC,MAAM,yBAAyB,MAAiC;AACrE,MAAI,CAAC,YAAY,KAAK;AACpB,WAAO,kEAAkE;AAAA,MACvE,OAAO;AAAA,IACT,CAAC;AACD,WAAO,wBAAwB;AAAA,EACjC;AAEA,QAAM,uBAAiE;AAAA,IACrE,SAAS,YAAY,IAAI;AAAA,IACzB,iBAAiB,YAAY,IAAI;AAAA,IACjC,YAAY,YAAY,IAAI;AAAA,IAC5B,eAAe,YAAY,IAAI;AAAA,EACjC;AAEA,QAAM,aAA6C;AAAA,IACjD,YAAY,YAAY,IAAI;AAAA,IAC5B,YAAY,YAAY,IAAI;AAAA,IAC5B,eAAe,YAAY,IAAI;AAAA,IAC/B,UAAU,YAAY,IAAI;AAAA,IAC1B,iBAAiB,YAAY,IAAI;AAAA,IACjC,UAAU,YAAY,IAAI;AAAA,EAC5B;AAEA,QAAM,UAAuC;AAAA,IAC3C,gBAAgB,YAAY,IAAI;AAAA,IAChC,SAAS,YAAY,IAAI;AAAA,IACzB,YAAY,YAAY,IAAI;AAAA,IAC5B,cAAc,YAAY,IAAI;AAAA,IAC9B,iBAAiB,YAAY,IAAI;AAAA,IACjC,uBAAuB,YAAY,IAChC;AAAA,IACH,yBAAyB,YAAY,IAClC;AAAA,IACH,wBAAwB,YAAY,IACjC;AAAA,IACH,qBAAqB,YAAY,IAAI;AAAA,IACrC,sBAAsB,YAAY,IAC/B;AAAA,IACH,UAAU,YAAY,IAAI;AAAA,IAC1B,SAAS,YAAY,IAAI;AAAA,IACzB,WAAW,YAAY,IAAI;AAAA,IAC3B,qBAAqB,YAAY,IAAI;AAAA,IACrC,6BAA6B,YAAY,IACtC;AAAA,IACH,4BAA4B,YAAY,IACrC;AAAA,IACH,kBAAkB,YAAY,IAAI;AAAA,IAClC,OAAO,YAAY,IAAI;AAAA,EACzB;AAEA,QAAM,SAAqC;AAAA,IACzC,gBAAgB,YAAY,IAAI;AAAA,IAChC,WAAW,YAAY,IAAI;AAAA,IAC3B,QAAQ,YAAY,IAAI;AAAA,IACxB,YAAY,YAAY,IAAI;AAAA,IAC5B,MAAM,YAAY,IAAI;AAAA,IACtB,SAAS,YAAY,IAAI;AAAA,IACzB,UAAU,YAAY,IAAI;AAAA,IAC1B,cAAc,YAAY,IAAI;AAAA,IAC9B,4BAA4B,YAAY,IACrC;AAAA,IACH,WAAW,YAAY,IAAI;AAAA,EAC7B;AAEA,QAAM,MAA+B;AAAA,IACnC,MAAM,YAAY,IAAI;AAAA,IACtB,QAAQ,YAAY,IAAI;AAAA,EAC1B;AAEA,QAAM,KAA6B;AAAA,IACjC,UAAU,YAAY,IAAI;AAAA,IAC1B,OAAO,YAAY,IAAI;AAAA,IACvB,aAAa,YAAY,IAAI;AAAA,IAC7B,QAAQ,YAAY,IAAI;AAAA,IACxB,oBAAoB,YAAY,IAAI;AAAA,EACtC;AAEA,QAAM,QAAmC;AAAA,IACvC,UAAU,YAAY,IAAI;AAAA,IAC1B,uBAAuB,YAAY,IAChC;AAAA,IACH,iBAAiB,YAAY,IAAI;AAAA,EACnC;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}