import path from 'path'; /** * Since this file overwrites environment variables for `config` lib, * it's important to "import" this file before all scripts in entry point file, * especially before `config` module import. */ /** * Export constant variables */ export const PRODUCTION_REGISTRY_URL = 'https://blocks-registery.axe-web.com'; export const IS_DEV = process.env.NODE_ENV === 'development'; export const BLOCK_NAME = process.env.BLOCK_NAME; export const MODULE_PATH = getModulePath(); /** * Overwrite env variables. */ process.env.NODE_CONFIG_DIR = path.join(getProjectPath(), 'config'); /** * Private functions. * Don't export these, export constants. */ function getModulePath() { let modulePath = 'node_modules/block-dev-tool'; if (typeof process.env.MODULE_PATH !== 'undefined') { modulePath = process.env.MODULE_PATH; } else if (BLOCK_NAME) { modulePath = 'node_modules/@axe-web/block-dev-tool'; } return modulePath; } export function getProjectPath() { let projectPath = ''; if (typeof process.env.PROJECT_PATH !== 'undefined') { projectPath = path.join(process.env.PROJECT_PATH ?? '', process.env.BLOCK_NAME ?? '') } else if (process.env.BLOCK_NAME) { projectPath = path.join('blocks', process.env.BLOCK_NAME ?? '') } return projectPath; }