Skip to content

Amount

getConfig

1.0.0

Gets the current global configuration for Amount operations, returning a readonly configuration object with current default settings.

Amount.getConfig();
  • Returns the current global AmountConfig object
  • Configuration is readonly to prevent accidental mutations
  • Shows current default currency and rounding settings
  • Useful for debugging and introspection
  • Static method - called on the Amount class
  • Simple and intuitive API
  • No side effects - read-only operation
  • Comprehensive testing
ArgTypeDefault ValueRequired
No arguments required

Get the current global configuration using the static getConfig() method.

import { Amount } from '@inpulse-ui/utils';
// Get current configuration
const config = Amount.getConfig();
console.log(config);
// { defaultCurrency: 'USD', defaultRounding: 'bank' }

Check specific configuration values:

const config = Amount.getConfig();
console.log(`Default currency: ${config.defaultCurrency}`);
console.log(`Default rounding: ${config.defaultRounding}`);

Conditional logic based on configuration:

const config = Amount.getConfig();
if (config.defaultCurrency === 'USD') {
console.log('Using US Dollar as default currency');
} else {
console.log(`Using ${config.defaultCurrency} as default currency`);
}
if (config.defaultRounding === 'bank') {
console.log('Using banker\'s rounding (round half to even)');
} else {
console.log('Using mathematical rounding (round half up)');
}

Configuration validation:

function validateConfiguration() {
const config = Amount.getConfig();
if (!config.defaultCurrency) {
throw new Error('Default currency is not configured');
}
if (!['bank', 'math'].includes(config.defaultRounding)) {
throw new Error('Invalid rounding configuration');
}
console.log('Configuration is valid:', config);
}
validateConfiguration();

Debugging and logging:

function debugAmountOperations() {
const config = Amount.getConfig();
console.log('Current Amount configuration:');
console.log(JSON.stringify(config, null, 2));
// Test with current configuration
const amount = Amount.set(100);
console.log(`Created amount with default currency: ${amount.format()}`);
const multiplied = amount.multiply(1.333);
console.log(`Multiplication result with ${config.defaultRounding} rounding: ${multiplied.format()}`);
}
debugAmountOperations();

Configuration backup and restore:

// Backup current configuration
const originalConfig = Amount.getConfig();
// Temporarily change configuration
Amount.configure({
defaultCurrency: 'EUR',
defaultRounding: 'math'
});
// Do some operations with new config
const tempAmount = Amount.set(100);
console.log(tempAmount.format()); // €100.00
// Restore original configuration
Amount.configure(originalConfig);
// Verify restoration
const restoredConfig = Amount.getConfig();
console.log('Configuration restored:', restoredConfig);

Application health checks:

function healthCheck() {
const config = Amount.getConfig();
const health = {
amountConfig: {
status: 'OK',
defaultCurrency: config.defaultCurrency,
defaultRounding: config.defaultRounding
},
timestamp: new Date().toISOString()
};
// Validate configuration
if (!config.defaultCurrency || !config.defaultRounding) {
health.amountConfig.status = 'ERROR';
health.amountConfig.error = 'Invalid configuration detected';
}
return health;
}
console.log(healthCheck());

Project

Built with by Jo Santana in Brazil.

© 2026 Inpulse. All rights reserved.