Skip to content

Amount

resetConfig

1.0.0

Resets the global configuration for Amount operations back to the default values, clearing any previously set configuration.

Amount.resetConfig();
  • Resets global configuration to factory defaults
  • Clears any previously configured default currency and rounding
  • Useful for testing and cleanup scenarios
  • Affects all subsequent Amount operations
  • Static method - called on the Amount class
  • Simple and intuitive API
  • No side effects on existing Amount instances
  • Comprehensive testing
ArgTypeDefault ValueRequired
No arguments required

Reset the global configuration to defaults using the static resetConfig() method.

import { Amount } from '@inpulse-ui/utils';
// First, set some custom configuration
Amount.configure({
defaultCurrency: 'EUR',
defaultRounding: 'math'
});
console.log(Amount.getConfig()); // { defaultCurrency: 'EUR', defaultRounding: 'math' }
// Reset to defaults
Amount.resetConfig();
console.log(Amount.getConfig()); // Returns factory defaults

Clean reset after custom configuration:

// Configure custom settings
Amount.configure({
defaultCurrency: 'GBP',
defaultRounding: 'bank'
});
// Use with custom config
const amount1 = Amount.set(100); // Uses GBP
// Reset configuration
Amount.resetConfig();
// Now uses default configuration
const amount2 = Amount.set(100); // Uses default currency

Testing scenarios - setup and teardown:

describe('Amount operations', () => {
beforeEach(() => {
// Ensure clean state for each test
Amount.resetConfig();
});
afterEach(() => {
// Clean up after each test
Amount.resetConfig();
});
it('should use default configuration', () => {
const config = Amount.getConfig();
// Assert default values
expect(config.defaultCurrency).toBe('USD'); // or whatever the factory default is
});
it('should work with custom configuration', () => {
Amount.configure({ defaultCurrency: 'EUR' });
const amount = Amount.set(100);
expect(amount.getCurrency()).toBe('EUR');
});
});

Application cleanup and reset:

function cleanupApplication() {
// Reset all global configurations
Amount.resetConfig();
console.log('Application configuration reset to defaults');
// Verify reset
const config = Amount.getConfig();
console.log('Current config after reset:', config);
}
// Call during application shutdown or testing cleanup
cleanupApplication();

Configuration management utility:

class AmountConfigManager {
private backupConfig: any = null;
backup() {
this.backupConfig = Amount.getConfig();
console.log('Configuration backed up:', this.backupConfig);
}
restore() {
if (this.backupConfig) {
Amount.configure(this.backupConfig);
console.log('Configuration restored from backup');
} else {
Amount.resetConfig();
console.log('Configuration reset to defaults (no backup available)');
}
}
reset() {
Amount.resetConfig();
this.backupConfig = null;
console.log('Configuration reset to factory defaults');
}
}
// Usage
const configManager = new AmountConfigManager();
configManager.backup();
Amount.configure({ defaultCurrency: 'EUR' });
// ... do some work
configManager.restore(); // or configManager.reset()

Development environment reset:

// Development utility to reset configuration during hot reloads
if (process.env.NODE_ENV === 'development') {
// Reset configuration on module reload
Amount.resetConfig();
console.log('Development mode: Amount configuration reset to defaults');
// Set development-specific defaults
Amount.configure({
defaultCurrency: 'USD',
defaultRounding: 'math'
});
}

Multi-environment configuration management:

function initializeForEnvironment(env: string) {
// Always start with clean slate
Amount.resetConfig();
switch (env) {
case 'test':
// Test environment uses defaults
console.log('Test environment: using default configuration');
break;
case 'development':
Amount.configure({
defaultCurrency: 'USD',
defaultRounding: 'math'
});
break;
case 'production':
Amount.configure({
defaultCurrency: process.env.DEFAULT_CURRENCY || 'USD',
defaultRounding: 'bank'
});
break;
default:
console.warn(`Unknown environment: ${env}, using defaults`);
}
console.log(`Environment ${env} initialized with config:`, Amount.getConfig());
}
initializeForEnvironment(process.env.NODE_ENV || 'development');

Project

Built with by Jo Santana in Brazil.

© 2026 Inpulse. All rights reserved.