Product
Introducing SSO
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
input-currency-react
Advanced tools
Readme
This libraries propose to introduce a hooks capable of formate currencies and calculate directly in the input (add, subtract, division and multiplication).
This component libraries use
TypeScript
,Hooks
.
npm install input-currency-react # or yarn add input-currency-react
Chrome | Edge | Firefox | Safari | Internet Explorer 11 | Opera |
---|---|---|---|---|---|
:heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :grey_question: |
import React from react;
import { useForm, Controller } from "react-hook-form";
const MyCustomForm = () => {
const {
control,
handleSubmit,
} = useForm();
return (
<form onSubmit={handleSubmit(onSubmit)}>
<Controller
name="value"
control={control}
defaultValue="0,00"
render={({value, onChange}) => (
<CurrencyInput
value={ value }
options={{ style: "decimal", allowNegative: false }}
onChangeEvent={(_, maskedValue) => {
onChange(maskedValue);
}}
required={true}
/>
)}
/>
</form>
)
}
import React from react;
import {
CurrencyInput,
Currencies,
Locales
} from 'input-currency-react';
const handleOnChange = (inputElement, maskedValue, value) => {};
<CurrencyInput
value="000" // Initial value
options={{
precision: 2,
style: "currency",
allowNegative: "true",
alwaysNegative: "false",
locale: Locales["English (United States)"], // Format Type
i18nCurrency: Currencies["US Dollar"] // Symbol
}}
autoFocus={true}
onChangeEvent={handleOnChange}
/>
import {
CurrencyCalculatorInput,
Currencies,
Locales
} from 'input-currency-react';
const handleOnChange = (inputElement, maskedValue, value) => {};
<CurrencyCalculatorInput
value="000" // Initial value
options={{
precision: 3,
style: "decimal",
locale: LocalesLocales["Portuguese (Brazil)"],
i18nCurrency: Currencies["Brazilian Real"]
}}
autoFocus={true}
onChangeEvent={handleOnChange}
/>
import {
CurrencyInputProps,
useCurrencyFormat,
} from 'input-currency-react';
const MyCustomCurrencyInput:React.FC<CurrencyInputProps> = (props) => {
const { value, options, onChangeEvent, ...otherProps } = props;
const [
formattedValue,
handleOnChange,
handleOnKeyDown,
handleOnClick
] = useCurrencyFormat(value,
{...options,
onChangeCallBack: onChangeEvent }); // or useCurrencyFormatCalculator
return (
<input
type="text"
style={{ textAlign:"right" }}
onChange={ handleOnChange }
onKeyDown={ handleOnKeyDown }
onClick={ handleOnClick }
value={ formattedValue }
{...otherProps} />
)
}
Option | Default Value | Description |
---|---|---|
value | 0 | The initial value |
onChangeEvent | n/a | Callback function to handle value change |
autoFocus | false | Autofocus |
ref | n/a | Reference for HTMLInputElement |
options | default hooks | hooks props |
Props | Default Value | Description |
---|---|---|
precision | 2 | Fraction Digits |
style | currency | currency or decimal(Remove symbol) |
locale | pt-BR | Country Code Reference(Currency symbol) |
i18nCurrency | BRL | String i18n(Format Type) |
allowNegative * | true | Allow negative numbers in the input |
alwaysNegative * | false | Prefix negative |
Note: *not present in useCurrencyFormatCalculator
*Note: This library use toLocaleString() to format the value.
FAQs
This libraries propose to introduce a hooks capable of formate currencies and calculate directly in the input (add, subtract, division and multiplication).
The npm package input-currency-react receives a total of 70 weekly downloads. As such, input-currency-react popularity was classified as not popular.
We found that input-currency-react demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.