import { publicRuntimeConfigSchema, serverRuntimeConfigSchema } from './schema/runtime-config'; import urls from '@/constants/urls'; import getConfig from 'next/config'; import { isServer } from 'tools/common'; const { serverRuntimeConfig, publicRuntimeConfig } = getConfig(); const { BASE_PATH, SENTRY_DSN } = publicRuntimeConfigSchema.parse(publicRuntimeConfig); export function withBasePath(path: string) { return String.prototype.concat(BASE_PATH, path); } function getUrls() { if (isServer()) { const { URL_GET_USER_DIRECT, URL_CORE_FINGAP_DIRECT, URL_1C_TRANSTAX_DIRECT, URL_CORE_CALCULATE_DIRECT, URL_CRM_CREATEKP_DIRECT, PORT, URL_ELT_KASKO_DIRECT, URL_ELT_OSAGO_DIRECT, URL_CRM_GRAPHQL_PROXY, } = serverRuntimeConfigSchema.parse(serverRuntimeConfig); return { BASE_PATH, PORT, SENTRY_DSN, URL_1C_TRANSTAX: URL_1C_TRANSTAX_DIRECT, URL_CORE_CALCULATE: URL_CORE_CALCULATE_DIRECT, URL_CORE_FINGAP: URL_CORE_FINGAP_DIRECT, URL_CRM_CREATEKP: URL_CRM_CREATEKP_DIRECT, URL_CRM_DOWNLOADKP: withBasePath(urls.URL_CRM_DOWNLOADKP_PROXY), URL_CRM_GRAPHQL: URL_CRM_GRAPHQL_PROXY, URL_ELT_KASKO: URL_ELT_KASKO_DIRECT, URL_ELT_OSAGO: URL_ELT_OSAGO_DIRECT, URL_GET_USER: URL_GET_USER_DIRECT, }; } return { BASE_PATH, SENTRY_DSN, URL_1C_TRANSTAX: withBasePath(urls.URL_1C_TRANSTAX_PROXY), URL_CORE_CALCULATE: withBasePath(urls.URL_CORE_CALCULATE_PROXY), URL_CORE_FINGAP: withBasePath(urls.URL_CORE_FINGAP_PROXY), URL_CRM_CREATEKP: withBasePath(urls.URL_CRM_CREATEKP_PROXY), URL_CRM_DOWNLOADKP: withBasePath(urls.URL_CRM_DOWNLOADKP_PROXY), URL_CRM_GRAPHQL: withBasePath(urls.URL_CRM_GRAPHQL_PROXY), URL_ELT_KASKO: withBasePath(urls.URL_ELT_KASKO_PROXY), URL_ELT_OSAGO: withBasePath(urls.URL_ELT_OSAGO_PROXY), URL_GET_USER: withBasePath(urls.URL_GET_USER_PROXY), }; } export default getUrls;