### Install Dependencies with Yarn Source: https://github.com/autonumeric/autonumeric/blob/next/doc/CONTRIBUTING.md Install the necessary development dependencies using Yarn. Ensure you have Yarn installed globally. ```sh cd autoNumeric yarn install ``` -------------------------------- ### Control Formatting on Page Load Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Examples showing how to disable or enable number formatting when the page initially loads. ```javascript new AutoNumeric('#issue_493_noFormat', 12234678.321, { currencySymbol:'$', formatOnPageLoad: false }); ``` ```javascript new AutoNumeric('#issue_493_noFormatNull', null, { currencySymbol:'$', formatOnPageLoad: false }); ``` ```javascript let anElement493 = new AutoNumeric('#issue_493_noFormatNoValue', { currencySymbol:'$', formatOnPageLoad: false }); anElement493.update({ emptyInputBehavior: AutoNumeric.options.emptyInputBehavior.null }); anElement493.set(null); ``` ```javascript new AutoNumeric('#issue_493_format', 12234678.321, { currencySymbol:'$', formatOnPageLoad: true }); ``` ```javascript new AutoNumeric('#issue_493_formatNull', null, { currencySymbol:'$', formatOnPageLoad: true }); ``` -------------------------------- ### Undo/Redo Functionality Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Examples of initializing AutoNumeric with undo/redo capabilities, including history size configuration. ```javascript new AutoNumeric('#undoRedo1').french(); ``` ```javascript new AutoNumeric('#undoRedo2').french(); ``` ```javascript new AutoNumeric('#undoRedo3', { digitGroupSeparator: AutoNumeric.options.digitGroupSeparator.dot, decimalCharacter : AutoNumeric.options.decimalCharacter.comma, minimumValue : 0, maximumValue : 99999999, decimalPlaces : 0, historySize : AutoNumeric.options.historySize.verySmall, }); ``` ```javascript new AutoNumeric('#undoRedo4'); ``` -------------------------------- ### Configure Currency Symbol and Sign Placement (JavaScript) Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html These examples showcase different combinations of currency symbol placement and negative/positive sign positioning. They are useful for customizing how monetary values are displayed and entered. ```javascript const case1 = { // +€12|.34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalLeft, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.prefix, showPositiveSign : true, }; ``` ```javascript const case12 = { // +€12|34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalLeft, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.left, showPositiveSign : true, }; ``` ```javascript const case13 = { // €+12|34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalLeft, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.right, showPositiveSign : true, }; ``` ```javascript const case14 = { // €12|34+ currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalLeft, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.suffix, showPositiveSign : true, }; ``` ```javascript const case15 = { // €12|34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalLeft, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.none, showPositiveSign : true, }; ``` ```javascript const case16 = { // +€12.|34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalRight, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.prefix, showPositiveSign : true, }; ``` ```javascript const case17 = { // +€12.|34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalRight, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.left, showPositiveSign : true, }; ``` ```javascript const case18 = { // €+12.|34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalRight, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.right, showPositiveSign : true, }; ``` ```javascript const case19 = { // €12.|34+ currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalRight, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.suffix, showPositiveSign : true, }; ``` ```javascript const case20 = { // €12.|34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.decimalRight, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.none, showPositiveSign : true, }; ``` ```javascript const case21 = { // |12.34€+ currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.suffix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.prefix, showPositiveSign : true, }; ``` ```javascript const case22 = { // |12.34€+ currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.suffix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.left, showPositiveSign : true, }; ``` ```javascript const case23 = { // |12.34+€ currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.suffix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.right, showPositiveSign : true, }; ``` ```javascript const case24 = { // +|12.3 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.suffix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.suffix, showPositiveSign : true, }; ``` -------------------------------- ### Initialize AutoNumeric with initial value and custom options Source: https://context7.com/autonumeric/autonumeric/llms.txt Initialize AutoNumeric with a specific starting value and a detailed set of custom formatting options. ```javascript // With an initial value and custom options const anEl2 = new AutoNumeric('#amount', 12345.678, { currencySymbol: '$ ', currencySymbolPlacement: 'p', // prefix decimalCharacter: '.', digitGroupSeparator: ',', decimalPlaces: 2, roundingMethod: 'S', // half-up symmetric }); // Input displays: $ 12,345.68 ``` -------------------------------- ### AutoNumeric Configuration Cases for Sign and Symbol Placement Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Illustrates various configurations for currency symbol placement, caret position, and negative/positive sign placement. These examples are useful for fine-tuning the display of financial data according to different regional standards. ```javascript const case1 = { // +€|12.34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.prefix, showPositiveSign : true, }; ``` ```javascript const case2 = { // +€|12.34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.left, showPositiveSign : true, }; ``` ```javascript const case3 = { // €+|12.34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.right, showPositiveSign : true, }; ``` ```javascript const case4 = { // €|12.34+ currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.suffix, showPositiveSign : true, }; ``` ```javascript const case5 = { // €|12.34 currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.none, showPositiveSign : true, }; ``` ```javascript const case6 = { // +€12.34| currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.end, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.prefix, showPositiveSign : true, }; ``` ```javascript const case7 = { // +€12.34| currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.end, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.left, showPositiveSign : true, }; ``` ```javascript const case8 = { // €+12.34| currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.end, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.right, showPositiveSign : true, }; ``` ```javascript const case9 = { // €12.34|+ currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.end, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.suffix, showPositiveSign : true, }; ``` ```javascript const case10 = { // €12.34| currencySymbol : "jk", selectOnFocus : AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement : AutoNumeric.options.currencySymbolPlacement.prefix, caretPositionOnFocus : AutoNumeric.options.caretPositionOnFocus.end, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.none, showPositiveSign : true, }; ``` ```javascript const case11 = { // +€12|.34 currencySymbol : ``` -------------------------------- ### Install AutoNumeric via npm or yarn Source: https://context7.com/autonumeric/autonumeric/llms.txt Use npm or yarn to add AutoNumeric to your project dependencies. ```bash # npm npm install autonumeric # yarn yarn add autonumeric ``` -------------------------------- ### Get AutoNumeric Settings Source: https://github.com/autonumeric/autonumeric/blob/next/doc/Documentation.md Retrieve specific settings or all settings from an initialized AutoNumeric instance. ```APIDOC ## Get AutoNumeric Settings ### Description Allows retrieval of individual AutoNumeric settings or all current settings from an element. ### Method JavaScript (jQuery plugin method) ### Endpoint N/A (Method call on a jQuery object) ### Parameters None directly for `getSettings` itself, but it's called on a selector. ### Usage ```javascript $('someSelector').autoNumeric('getSettings'); ``` ### Retrieving Specific Settings To get a specific setting, append the option name to 'getSettings'. #### Example: Get decimalCharacter ```javascript $('someSelector').autoNumeric('getSettings').decimalCharacter; // returns the 'decimalCharacter' value ``` #### Example: Get any individual setting ```javascript // Replace 'decimalCharacter' with the desired settings / option name $('someSelector').autoNumeric('getSettings').optionName; ``` ``` -------------------------------- ### Issue #416: Style Rules Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Examples of applying various predefined style rules for visual feedback based on number ranges and conditions, addressing Issue #416. ```javascript new AutoNumeric('#issue_416_1', { styleRules: AutoNumeric.options.styleRules.none }); ``` ```javascript new AutoNumeric('#issue_416_2', { styleRules: AutoNumeric.options.styleRules.positiveNegative }); ``` ```javascript new AutoNumeric('#issue_416_3', { styleRules: AutoNumeric.options.styleRules.positiveNegative }); ``` ```javascript new AutoNumeric('#issue_416_4', { styleRules: AutoNumeric.options.styleRules.evenOdd }); ``` ```javascript new AutoNumeric('#issue_416_5', { styleRules: AutoNumeric.options.styleRules.evenOdd }); ``` ```javascript new AutoNumeric('#issue_416_6', { styleRules: AutoNumeric.options.styleRules.range0To100With4Steps }); ``` ```javascript new AutoNumeric('#issue_416_7', { styleRules: AutoNumeric.options.styleRules.range0To100With4Steps }); ``` ```javascript new AutoNumeric('#issue_416_8', { styleRules: AutoNumeric.options.styleRules.range0To100With4Steps }); ``` ```javascript new AutoNumeric('#issue_416_9', { styleRules: AutoNumeric.options.styleRules.range0To100With4Steps }); ``` ```javascript new AutoNumeric('#issue_416_10', { styleRules: AutoNumeric.options.styleRules.rangeSmallAndZero }); ``` ```javascript new AutoNumeric('#issue_416_11', { styleRules: AutoNumeric.options.styleRules.rangeSmallAndZero }); ``` ```javascript new AutoNumeric('#issue_416_12', { styleRules: AutoNumeric.options.styleRules.rangeSmallAndZero }); ``` -------------------------------- ### Get default configuration with AutoNumeric v4 Source: https://github.com/autonumeric/autonumeric/blob/next/doc/HowToUpgradeToV4.md Use `AutoNumeric.getDefaultConfig()` to retrieve the default configuration options. This replaces `$.fn.autoNumeric.defaults` from v2. ```javascript AutoNumeric.getDefaultConfig() ``` -------------------------------- ### Get predefined options with AutoNumeric v4 Source: https://github.com/autonumeric/autonumeric/blob/next/doc/HowToUpgradeToV4.md Use `AutoNumeric.getPredefinedOptions()` to access predefined language and currency options. This replaces `$.fn.autoNumeric.lang` from v2. ```javascript AutoNumeric.getPredefinedOptions() ``` -------------------------------- ### Clone the Latest Source Code Source: https://github.com/autonumeric/autonumeric/blob/next/doc/CONTRIBUTING.md Clone the development branch of the AutoNumeric repository to start contributing. Use the SSH URL if you are authenticated with GitHub. ```sh git clone -b next https://github.com/autoNumeric/autoNumeric.git # or the following if you are authentified on github : # `git clone -b next git@github.com:autoNumeric/autoNumeric.git` ``` -------------------------------- ### Get AutoNumeric Settings Source: https://context7.com/autonumeric/autonumeric/llms.txt Retrieve the current configuration object of an AutoNumeric instance using `getSettings()`. This is useful for inspecting active options like currency symbols or decimal places. ```javascript const anEl = new AutoNumeric('#el', { currencySymbol: '€ ', decimalPlaces: 3 }); const settings = anEl.getSettings(); console.log(settings.currencySymbol); // "€ " console.log(settings.decimalPlaces); // 3 console.log(settings.digitGroupSeparator); // "," ``` -------------------------------- ### Configure Decimal and Alternative Decimal Characters Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Sets custom decimal and alternative decimal characters for AutoNumeric. This example configures the 'euro' format with a comma as the decimal character and a dot as an alternative. ```javascript new AutoNumeric('#issue_432_dot', [ 'euro', { decimalCharacter : AutoNumeric.options.decimalCharacter.comma, decimalCharacterAlternative: AutoNumeric.options.decimalCharacterAlternative.dot, }, ]); ``` ```javascript new AutoNumeric('#issue_432_none', [ 'euro', { decimalCharacter : AutoNumeric.options.decimalCharacter.comma, decimalCharacterAlternative: AutoNumeric.options.decimalCharacterAlternative.none, }, ]); ``` -------------------------------- ### AutoNumeric: Synchronize Field Values (Issue #295) Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html This example shows how to synchronize the value of one AutoNumeric input field to another using an event listener. It's useful for scenarios where one field's input should mirror another's. ```javascript const firstField = document.querySelector('#firstField'); const secondField = document.querySelector('#secondField'); firstField.addEventListener('keyup', () => { secondField.value = firstField.value; }); ``` -------------------------------- ### AutoNumeric Initialization with Options Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Demonstrates initializing AutoNumeric with various options to control formatting, currency, and behavior. ```javascript new AutoNumeric('#issue\_326', { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative: '.', currencySymbol : '\u00a0€', currencySymbolPlacement : 's', roundingMethod : 'U', minimumValue : '-999999999999', maximumValue : '999999999999', onInvalidPaste : 'ignore', alwaysAllowDecimalCharacter: true, }); ``` ```javascript new AutoNumeric('#issue\_250', { decimalPlaces: 2, allowDecimalPadding: AutoNumeric.options.allowDecimalPadding.never, minimumValue: '2', maximumValue: '999999999' }); ``` ```javascript new AutoNumeric('#issue\_317', { leadingZero: 'deny', decimalCharacterAlternative: ',' }); ``` ```javascript new AutoNumeric('#issue\_303p', { currencySymbolPlacement: 'p', currencySymbol: '$' , /*emptyInputBehavior: 'always'*/ }); ``` ```javascript new AutoNumeric('#issue\_303s', { currencySymbolPlacement: 's', currencySymbol: '\u00a0€', /*emptyInputBehavior: 'always'*/ }); ``` -------------------------------- ### Get AutoNumeric.js Library Version Source: https://context7.com/autonumeric/autonumeric/llms.txt Call the static `AutoNumeric.version()` method to retrieve the currently installed version of the AutoNumeric.js library. This is useful for debugging or ensuring compatibility. ```javascript console.log(AutoNumeric.version()); // "4.10.9" ``` -------------------------------- ### Get numeric string from an instance with v4 Source: https://github.com/autonumeric/autonumeric/blob/next/doc/HowToUpgradeToV4.md Use `anElement.getNumericString()` to get the numeric string representation of the AutoNumeric instance. This replaces the v2 jQuery plugin method `autoNumeric('get')`. ```javascript anElement.getNumericString(); ``` -------------------------------- ### Using Pre-defined AutoNumeric Options Source: https://context7.com/autonumeric/autonumeric/llms.txt Demonstrates initializing AutoNumeric elements with various predefined option sets for different currencies and formats. These options simplify common use cases. ```javascript new AutoNumeric('#a', AutoNumeric.predefinedOptions.euro).set(1234.56); ``` ```javascript new AutoNumeric('#b', AutoNumeric.predefinedOptions.dollar).set(1234.56); ``` ```javascript new AutoNumeric('#c', AutoNumeric.predefinedOptions.British).set(1234.56); ``` ```javascript new AutoNumeric('#d', AutoNumeric.predefinedOptions.Swiss).set(1234.56); ``` ```javascript new AutoNumeric('#e', AutoNumeric.predefinedOptions.integer).set(42.9); ``` ```javascript new AutoNumeric('#f', AutoNumeric.predefinedOptions.percentageUS2dec).set(0.1234); ``` ```javascript new AutoNumeric('#g', AutoNumeric.predefinedOptions.dollarNegBrackets).set(-500); ``` -------------------------------- ### Get number from an instance with v4 Source: https://github.com/autonumeric/autonumeric/blob/next/doc/HowToUpgradeToV4.md Use `anElement.getNumber()` to get the raw number from an AutoNumeric instance. This replaces the v2 jQuery plugin method `autoNumeric('getNumber')`. ```javascript anElement.getNumber(); ``` -------------------------------- ### Get localized value from an instance with v4 Source: https://github.com/autonumeric/autonumeric/blob/next/doc/HowToUpgradeToV4.md Use `anElement.getLocalized()` to get the localized string representation from an AutoNumeric instance. This replaces the v2 jQuery plugin method `autoNumeric('getLocalized')`. ```javascript anElement.getLocalized(); ``` -------------------------------- ### Initialization and Form Handling Source: https://github.com/autonumeric/autonumeric/blob/next/CHANGELOG.md Methods related to initializing elements and handling form data. ```APIDOC ## init(element) ### Description Allows to use the current AutoNumeric element settings to initialize the DOM element given as a parameter. This effectively links the two AutoNumeric elements by making them share the same local AutoNumeric element list. ### Method `init(element)` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## form() ### Description Returns a reference to the parent
element if it exists, otherwise returns `null`. ### Method `form()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formNumericString() ### Description Returns a string in standard URL-encoded notation with the form input values being unformatted. ### Method `formNumericString()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formFormatted() ### Description Returns a string in standard URL-encoded notation with the form input values being formatted. ### Method `formFormatted()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formLocalized() ### Description Returns a string in standard URL-encoded notation with the form input values, with localized values. ### Method `formLocalized()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formArrayNumericString() ### Description Returns an array containing an object for each form `` element, with unformatted numeric string values. ### Method `formArrayNumericString()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formArrayFormatted() ### Description Returns an array containing an object for each form `` element, with formatted values. ### Method `formArrayFormatted()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formArrayLocalized() ### Description Returns an array containing an object for each form `` element, with localized values. ### Method `formArrayLocalized()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formJsonNumericString() ### Description Returns a JSON string containing an object representing the form input values as unformatted numeric strings. ### Method `formJsonNumericString()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formJsonFormatted() ### Description Returns a JSON string containing an object representing the form input values, with formatted values. ### Method `formJsonFormatted()` ### Endpoint N/A (Instance Method) ``` ```APIDOC ## formJsonLocalized() ### Description Returns a JSON string containing an object representing the form input values, with localized values. ### Method `formJsonLocalized()` ### Endpoint N/A (Instance Method) ``` -------------------------------- ### Get numeric strings as an array with v4 Source: https://github.com/autonumeric/autonumeric/blob/next/doc/HowToUpgradeToV4.md Use `anElement.formArrayNumericString()` to get an array of numeric strings from AutoNumeric instances. This replaces the v2 jQuery plugin method `autoNumeric('getArray')`. ```javascript anElement.formArrayNumericString(); ``` -------------------------------- ### Configure currency symbol with different placements Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Shows how to initialize AutoNumeric inputs with a Euro currency symbol, specifying its placement as either a prefix or a suffix. This allows for flexible currency display according to regional standards. ```javascript new AutoNumeric('#issue_675a', { currencySymbol: '' }); new AutoNumeric('#issue_675b', { currencySymbol: '€', currencySymbolPlacement: AutoNumeric.options.currencySymbolPlacement.prefix }); new AutoNumeric('#issue_675c', { currencySymbol: '€', currencySymbolPlacement: AutoNumeric.options.currencySymbolPlacement.suffix }); ``` -------------------------------- ### Get Localized Raw Value Source: https://context7.com/autonumeric/autonumeric/llms.txt Use `getLocalized()` to get the unformatted value according to the `outputFormat` setting. This is useful for locales with different decimal or sign conventions. You can also force the output to be a JavaScript number. ```javascript const anEl = new AutoNumeric('#loc', -1234.56, { outputFormat: ',-', // comma decimal, trailing minus }); console.log(anEl.getLocalized()); // "1234,56-" console.log(anEl.getLocalized('number')); // -1234.56 (JS number forced) console.log(anEl.getLocalized(',.')); // "1,234.56-" (comma dec, period sep, trailing minus) ``` -------------------------------- ### Get numeric string from an instance (form style) with v4 Source: https://github.com/autonumeric/autonumeric/blob/next/doc/HowToUpgradeToV4.md Use `anElement.formNumericString()` to get a numeric string suitable for form submission from an AutoNumeric instance. This replaces the v2 jQuery plugin method `autoNumeric('getString')`. ```javascript anElement.formNumericString(); ``` -------------------------------- ### Language Presets Source: https://context7.com/autonumeric/autonumeric/llms.txt Provides quick methods to apply locale-specific formatting options. Available presets include `french()`, `northAmerican()`, `british()`, `swiss()`, `japanese()`, `spanish()`, `chinese()`, and `brazilian()`. Each method can optionally accept an object to override specific locale settings. ```APIDOC ## Language presets — `french()`, `northAmerican()`, `british()`, `swiss()`, `japanese()`, `spanish()`, `chinese()`, `brazilian()` Quick methods to apply a locale's pre-defined options. Each accepts an optional override object. ### Usage ```js const anEl = new AutoNumeric('#price').french(); anEl.set(1234567.89); // Displays: 1.234.567,89 € new AutoNumeric('#gbp').british().set(9999.99); // Displays: £9,999.99 new AutoNumeric('#chf').swiss().set(1234.56); // Displays: 1'234.56 CHF // With overrides new AutoNumeric('#custom').french({ decimalPlaces: 4 }).set(1.2345); // Displays: 1,2345 € ``` ``` -------------------------------- ### AutoNumeric Configuration: Suffix Currency Symbol and Start Caret Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Configures AutoNumeric to place the currency symbol at the suffix, do not select text on focus, and position the caret at the start. Useful for standard currency inputs where the symbol follows the number. ```javascript const case25 = { // |12.34€ currencySymbol: "jk", selectOnFocus: AutoNumeric.options.selectOnFocus.doNotSelect, currencySymbolPlacement: AutoNumeric.options.currencySymbolPlacement.suffix, caretPositionOnFocus: AutoNumeric.options.caretPositionOnFocus.start, negativePositiveSignPlacement: AutoNumeric.options.negativePositiveSignPlacement.none, showPositiveSign: true, }; ``` -------------------------------- ### AutoNumeric with isCancellable Option Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Examples demonstrating the 'isCancellable' option for AutoNumeric inputs. ```javascript new AutoNumeric('#issue\_387\_cancellable', { isCancellable: true, selectNumberOnly: false, currencySymbol: '$' }); ``` ```javascript new AutoNumeric('#issue\_387\_cancellable\_numOnly', { isCancellable: true, selectNumberOnly: true, currencySymbol: '$' }); ``` ```javascript new AutoNumeric('#issue\_387\_not\_cancellable', { isCancellable: false, selectNumberOnly: false, currencySymbol: '$' }); ``` ```javascript new AutoNumeric('#issue\_387\_not\_cancellable\_numOnly', { isCancellable: false, selectNumberOnly: true, currencySymbol: '$' }); ``` -------------------------------- ### Build the Library Source: https://github.com/autonumeric/autonumeric/blob/next/doc/CONTRIBUTING.md Compile the ES6 source code into distributable JavaScript files (`autoNumeric.js` and `autoNumeric.min.js`) located in the `dist` folder. ```sh yarn build ``` -------------------------------- ### Run All Tests Source: https://github.com/autonumeric/autonumeric/blob/next/doc/CONTRIBUTING.md Execute both unit and end-to-end tests to ensure code quality and stability. All tests must pass before pushing changes. ```sh yarn test ``` -------------------------------- ### AutoNumeric Configurations for Currency Symbol Placement and Sign Placement Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Demonstrates various AutoNumeric configurations focusing on the placement of currency symbols and positive/negative signs. ```javascript const noneLeft = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative: '.', showPositiveSign : true, }; const noneSuffix = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative : '.', currencySymbol : '', currencySymbolPlacement : 'p', negativePositiveSignPlacement: 's', roundingMethod : 'U', showPositiveSign : true, }; const leftRight = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative : '.', currencySymbol : '€\u00a0', currencySymbolPlacement : 'p', negativePositiveSignPlacement: 'r', roundingMethod : 'U', showPositiveSign : true, }; const leftLeft = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative : '.', currencySymbol : '€\u00a0', currencySymbolPlacement : 'p', negativePositiveSignPlacement: 'l', roundingMethod : 'U', showPositiveSign : true, }; const leftSuffix = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative : '.', currencySymbol : '€\u00a0', currencySymbolPlacement : 'p', negativePositiveSignPlacement: 's', roundingMethod : 'U', showPositiveSign : true, }; const rightLeft = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative : '.', currencySymbol : '\u00a0€', currencySymbolPlacement : 's', negativePositiveSignPlacement: 'l', roundingMethod : 'U', showPositiveSign : true, }; const rightRight = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative : '.', currencySymbol : '\u00a0€', currencySymbolPlacement : 's', negativePositiveSignPlacement: 'r', roundingMethod : 'U', showPositiveSign : true, }; const rightPrefix = { digitGroupSeparator : '.', decimalCharacter : ',', decimalCharacterAlternative : '.', currencySymbol : '\u00a0€', currencySymbolPlacement : 's', negativePositiveSignPlacement: 'p', roundingMethod : 'U', showPositiveSign : true, }; const inputIssue346\_1An = new AutoNumeric('#issue\_346\_1', noneLeft); const inputIssue346\_2An = new AutoNumeric('#issue\_346\_2', noneSuffix); const inputIssue346\_3An = new AutoNumeric('#issue\_346\_3', leftRight); const inputIssue346\_4An = new AutoNumeric('#issue\_346\_4', leftLeft); const inputIssue346\_5An = new AutoNumeric('#issue\_346\_5', leftSuffix); const inputIssue346\_6An = new AutoNumeric('#issue\_346\_6', rightLeft); const inputIssue346\_7An = new AutoNumeric('#issue\_346\_7', rightRight); const inputIssue346\_8An = new AutoNumeric('#issue\_346\_8', rightPrefix); document.querySelector('#issue\_346\_1').addEvent ``` -------------------------------- ### AutoNumeric with modifyValueOnWheel Option Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Examples showing how to control mouse wheel modification of values with AutoNumeric. ```javascript new AutoNumeric('#issue\_393\_nowheel', { modifyValueOnWheel: false }); ``` ```javascript new AutoNumeric('#issue\_393\_fixed', { modifyValueOnWheel: true, wheelStep: 1000 }); ``` ```javascript new AutoNumeric('#issue\_393\_progressive', { modifyValueOnWheel: true, wheelStep: 'progressive' }); ``` ```javascript new AutoNumeric('#issue\_393\_upperLimit', { modifyValueOnWheel: true, wheelStep: 1000, minimumValue: '25000', maximumValue: '1000999' }); ``` ```javascript new AutoNumeric('#issue\_393\_lowerLimit', { modifyValueOnWheel: true, wheelStep: 'progressive', minimumValue: '-75999', maximumValue: '34100' }); ``` ```javascript new AutoNumeric('#issue\_393\_limitOneSideUp', { modifyValueOnWheel: true, wheelStep: 'progressive', minimumValue: '45002', maximumValue: '52003' }); ``` ```javascript new AutoNumeric('#issue\_393\_limitOneSideDown', { modifyValueOnWheel: true, wheelStep: 'progressive', minimumValue: '-75999', maximumValue: '-52500' }); ``` -------------------------------- ### getSettings() — Inspect current configuration Source: https://context7.com/autonumeric/autonumeric/llms.txt Retrieves the complete configuration settings object currently applied to the AutoNumeric instance. This is useful for inspecting or debugging the active options. ```APIDOC ## `getSettings()` — Inspect current configuration Returns the full settings object currently in use by the AutoNumeric instance. ### Usage ```js const anEl = new AutoNumeric('#el', { currencySymbol: '€ ', decimalPlaces: 3 }); const settings = anEl.getSettings(); console.log(settings.currencySymbol); // "€ " console.log(settings.decimalPlaces); // 3 console.log(settings.digitGroupSeparator); // "," ``` ``` -------------------------------- ### Configure currency symbol and placement Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Demonstrates setting a currency symbol and its placement (prefix or suffix) for AutoNumeric inputs. This is essential for financial applications requiring localized currency formatting. ```javascript new AutoNumeric('#issue_647a', { currencySymbol: 'a1 ', currencySymbolPlacement: AutoNumeric.options.currencySymbolPlacement.prefix }); new AutoNumeric('#issue_647b', { currencySymbol: ' a1', currencySymbolPlacement: AutoNumeric.options.currencySymbolPlacement.suffix }); ``` -------------------------------- ### Fluent initialization with a language preset Source: https://context7.com/autonumeric/autonumeric/llms.txt Initialize AutoNumeric on an element and immediately apply a language-specific preset with further customization. ```javascript // Fluent initialization with a language preset const anEl5 = new AutoNumeric('#fr').french({ decimalPlaces: 3 }); ``` -------------------------------- ### Get Library Version Source: https://context7.com/autonumeric/autonumeric/llms.txt Retrieves the current version of the AutoNumeric library. This is useful for debugging or ensuring compatibility. ```APIDOC ## `static AutoNumeric.version()` ### Description Returns the current version of the AutoNumeric library as a string. ### Method `AutoNumeric.version()` ### Example ```javascript console.log(AutoNumeric.version()); // Output: "4.10.9" ``` ``` -------------------------------- ### Get autoNumeric settings Source: https://github.com/autonumeric/autonumeric/blob/next/doc/Documentation.md Returns an object containing the current autoNumeric settings for the selected field. This can be helpful during development. ```javascript $('someSelector').autoNumeric('getSettings'); ``` -------------------------------- ### Issue #409: Decimal Padding Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Demonstrates different behaviors for decimal padding based on the 'allowDecimalPadding' option, addressing Issue #409. ```javascript new AutoNumeric('#issue_409a', 500.40, { allowDecimalPadding: AutoNumeric.options.allowDecimalPadding.always }); ``` ```javascript new AutoNumeric('#issue_409n', 500.40, { allowDecimalPadding: AutoNumeric.options.allowDecimalPadding.never }); ``` ```javascript new AutoNumeric('#issue_409f', 500.40, { allowDecimalPadding: AutoNumeric.options.allowDecimalPadding.floats }); ``` -------------------------------- ### Initialize AutoNumeric with Options Source: https://github.com/autonumeric/autonumeric/blob/next/doc/Documentation.md Pass options directly during initialization to set specific formatting like digit group separators, decimal characters, and currency symbols. ```javascript $(document).ready(function(){ $(selector).autoNumeric("init", { digitGroupSeparator: '.', decimalCharacter: ',', currencySymbol: '€ ' }); }); ``` -------------------------------- ### Apply Language Presets Source: https://context7.com/autonumeric/autonumeric/llms.txt Quickly configure AutoNumeric instances for specific locales using methods like `french()`, `british()`, or `swiss()`. These presets apply predefined formatting options and can be overridden with an additional options object. ```javascript const anEl = new AutoNumeric('#price').french(); anEl.set(1234567.89); // Displays: 1.234.567,89 € new AutoNumeric('#gbp').british().set(9999.99); // Displays: £9,999.99 new AutoNumeric('#chf').swiss().set(1234.56); // Displays: 1'234.56 CHF // With overrides new AutoNumeric('#custom').french({ decimalPlaces: 4 }).set(1.2345); // Displays: 1,2345 € ``` -------------------------------- ### Get AutoNumeric Setting Source: https://github.com/autonumeric/autonumeric/blob/next/doc/Documentation.md Retrieve an individual setting value from an initialized AutoNumeric element. Replace 'decimalCharacter' with the desired option name. ```javascript $"someSelector".autoNumeric('getSettings').decimalCharacter; ``` -------------------------------- ### Get Source: https://github.com/autonumeric/autonumeric/blob/next/doc/Documentation.md Retrieves the unformatted string value from an autoNumeric controlled element. It supports options for handling decimal separators and negative signs. ```APIDOC ## Get ### Description Retrieves the unformatted string value from an autoNumeric controlled element. It supports options for handling decimal separators and negative signs. ### Method ``` $(someSelector).autoNumeric('get'); // returns "nnnn.nn" or "-nnnn.nn" $(someSelector).autoNumeric('get', '.-'); // returns "nnnn.nn" or "nnnn.nn-" // trailing negative sign $(someSelector).autoNumeric('get', ','); // returns "nnnn,nn" or "-nnnn,nn" // comma as decimal seperator $(someSelector).autoNumeric('get', ',-'); // returns "nnnn,nn" or "nnnn,nn-" // comma as decimal separator & trailing negative sign ``` ``` -------------------------------- ### Use Predefined Percentage Options Source: https://github.com/autonumeric/autonumeric/blob/next/test/e2e/index.html Initializes AutoNumeric using predefined options for European and US percentage formats, including three decimal places. Event listeners log the numeric string. ```javascript const an589EU = new AutoNumeric('#issue_589_eu', AutoNumeric.getPredefinedOptions().percentageEU3dec); an589EU.node().addEventListener('input', () => { console.log('an589EU.getNumericString():', an589EU.getNumericString()); //DEBUG }, false); const an589US = new AutoNumeric('#issue_589_us', AutoNumeric.getPredefinedOptions().percentageUS3dec); an589US.node().addEventListener('input', () => { console.log('an589EU.getNumericString():', an589US.getNumericString()); //DEBUG }, false); ``` -------------------------------- ### AutoNumeric Constructor Configuration Source: https://context7.com/autonumeric/autonumeric/llms.txt Demonstrates the extensive configuration options available when initializing AutoNumeric. These options control number formatting, currency display, input range, empty input behavior, and more. All options can be passed to the constructor, update(), set(), or options.* setters. ```javascript const anEl = new AutoNumeric('#el', { // --- Number formatting --- decimalPlaces: 2, // 0–6 (or exact integer) decimalCharacter: '.', // '.' | ',' | '·' | '٫' decimalCharacterAlternative: ',', // null | ',' | '.' digitGroupSeparator: ',', // ',' | '.' | ' ' | '\u202f' | '' | "'" digitalGroupSpacing: '3', // '2' | '2t' | '2s' | '3' | '4' roundingMethod: 'S', // 'S' half-up sym | 'A' half-up | 'U' up | 'D' down | 'C' ceil | 'F' floor // --- Currency --- currencySymbol: '$', // any string, e.g. '€', '£', 'R$ ' currencySymbolPlacement: 'p', // 'p' prefix | 's' suffix negativePositiveSignPlacement: 'l', // 'l' left | 'r' right | 'p' prefix | 's' suffix | null suffixText: '', // any string appended after the number // --- Range --- minimumValue: '-10000000000000', // string, period as decimal maximumValue: '10000000000000', // string, period as decimal overrideMinMaxLimits: null, // null | 'ceiling' | 'floor' | 'ignore' | 'invalid' // --- Empty behavior --- emptyInputBehavior: 'focus', // 'focus' | 'press' | 'always' | 'zero' | 'min' | 'max' | 'null' // --- Leading zeros --- leadingZero: 'deny', // 'deny' | 'allow' | 'keep' // --- Decimal padding --- allowDecimalPadding: true, // true always | false never | 'floats' alwaysAllowDecimalCharacter: false, // true | false // --- Wheel & arrow --- modifyValueOnWheel: true, // true | false wheelOn: 'focus', // 'focus' | 'hover' wheelStep: 'progressive', // 'progressive' | number modifyValueOnUpDownArrow: true, // true | false upDownStep: 1, // 'progressive' | number // --- Negative brackets (shown on blur) --- negativeBracketsTypeOnBlur: null, // null | '(,)' | '[,]' | '<,>' | '{,}' // --- Display scale when unfocused --- divisorWhenUnfocused: null, // null | 100 (percentage) | 1000 (permille) decimalPlacesShownOnBlur: null, // null | 0–6 decimalPlacesShownOnFocus: null, // null | 0–6 symbolWhenUnfocused: null, // null | '%' | any suffix string // --- Raw value scale --- rawValueDivisor: null, // null | 100 | 1000 // --- Formula mode --- formulaMode: false, // true | false // --- Misc behavior --- readOnly: false, // true | false noEventListeners: false, // true (no listeners) | false unformatOnSubmit: false, // true | false unformatOnHover: true, // true | false saveValueToSessionStorage: false, // true | false watchExternalChanges: false, // true | false selectOnFocus: true, // true | false caretPositionOnFocus: null, // null | 'start' | 'end' | 'decimalLeft' | 'decimalRight' historySize: 20, // integer (undo/redo depth) showWarnings: true, // true | false failOnUnknownOption: false, // true | false // --- Map specific rawValues to display strings --- valuesToStrings: null, // null | { '0': 'zero', '-1': 'N/A' } // --- Style rules based on rawValue --- styleRules: null, // null | { positive: 'green', negative: 'red', ranges: [...] } // --- Output format for getLocalized() --- outputFormat: null, // null | 'string' | 'number' | '-,' | ',.' | '-.' | '.-' | ',.' | ',-' // --- Output of serialized form spaces --- serializeSpaces: '+', // '+' | '%20' }); ``` -------------------------------- ### Get Formatted Display String Source: https://context7.com/autonumeric/autonumeric/llms.txt Retrieve the exact string displayed in the input element using `getFormatted()`. This includes currency symbols and separators. ```javascript const anEl = new AutoNumeric('#display', 1234.56, { currencySymbol: '£', currencySymbolPlacement: 'p', digitGroupSeparator: ',', decimalCharacter: '.', }); console.log(anEl.getFormatted()); // "£1,234.56" ```