UNPKG

@canutin/svelte-currency-input

Version:

A fully-featured currency input component for Svelte 5 that handles formatting, localization, and validation

27 lines (26 loc) 736 B
export const padTrimValue = (value, decimalSeparator, decimalScale) => { if (decimalScale === undefined || decimalSeparator === '' || decimalSeparator === undefined || value === '' || value === undefined) { return value; } if (!value.match(/\d/g)) { return ''; } const [int, decimals] = value.split(decimalSeparator); if (decimalScale === 0) { return int; } let newValue = decimals || ''; if (newValue.length < decimalScale) { while (newValue.length < decimalScale) { newValue += '0'; } } else { newValue = newValue.slice(0, decimalScale); } return `${int}${decimalSeparator}${newValue}`; };