UNPKG

@cronstamp/clientlib

Version:

Client library for cronstamp, a blockchain-based document timestamping and verification service.

41 lines 1.39 kB
import { LOG_LEVELS } from './logger.js'; export const DefaultConfig = { LOG_LEVEL: LOG_LEVELS.WARN, BLOCKCHAIN_XRP_SERVERS: ['wss://xrplcluster.com', 'wss://s2.ripple.com:51234'], BLOCKCHAIN_SOLANA_SERVERS: ['https://api.mainnet-beta.solana.com', 'https://free.rpcpool.com'], API_URL: 'https://api.cronstamp.com', CERT_REQUEST_TIMEOUT: 2000, CERT_REQUEST_INTERVAL: 1 }; /** * Update config with values from new config or default, if value is set in neither old/new config * Result is guaranteed to have all config options set * @param oldConfig * @param newPartialConfig * @param log */ export function updateConfig(oldConfig, newPartialConfig, log) { let newConfig = structuredClone(oldConfig); let changed = false; for (let key in newPartialConfig) { if (newPartialConfig[key] !== undefined) { newConfig[key] = newPartialConfig[key]; changed = true; } } // update logger log level immediately log.setLogLevel(newConfig.LOG_LEVEL); if (changed) { log.debug('Loaded provided config values: ', newConfig); } return newConfig; } export function apiLinesStringToArray(rawLines) { return rawLines ? rawLines .split(/\r?\n/g) .map((val) => val.trim()) .filter((val) => val.length > 0) : []; } //# sourceMappingURL=config.js.map