npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

smart-input-formatter

v1.0.2

Published

A React-based input formatter for phone numbers, currency, dates, and custom patterns

Downloads

136

Readme

Smart Input Formatter

A React-based input formatter for handling phone numbers, currency, dates, and custom patterns.

Installation

npm install smart-input-formatter

Features

  • Phone Number Formatting: Automatically formats phone numbers to national formats.
  • Currency Formatting: Formats input as currency based on locale and currency code.
  • Date Formatting: Formats date input in MM/DD/YYYY format.
  • Custom Pattern Formatting: Allows custom regex patterns for flexible input formats.

Installation

Install the package using npm:

npm install smart-input-formatter

4. Usage

Provide code examples that demonstrate how to use the package in various scenarios.

Usage

Importing the Component

import SmartInputFormatter from "smart-input-formatter";
import SmartInputFormatter from "smart-input-formatter";

function App() {
  return (
    <div>
      <h3>Phone Number Input</h3>
      <SmartInputFormatter
        type="phone"
        placeholder="Enter phone number"
      />

      <h3>Currency Input</h3>
      <SmartInputFormatter
        type="currency"
        placeholder="Enter amount"
        locale="en-US"
        currency="USD"
      />

      <h3>Date Input</h3>
      <SmartInputFormatter
        type="date"
        placeholder="MM/DD/YYYY"
      />

      <h3>Custom Pattern Input</h3>
      <SmartInputFormatter
        customPattern={/[^a-zA-Z0-9]/g}
        placeholder="Custom pattern input"
      />
    </div>
  );
}

export default App;

Props

| Prop | Type | Default | Description | | --------------- | ---------- | ----------- | ---------------------------------------------------------------------------------------------------- | | type | string | undefined | Specifies the input type. Can be 'phone', 'currency', 'date', or customPattern. | | placeholder | string | "" | Placeholder text for the input field. | | locale | string | 'en-US' | Locale used for currency formatting (optional, only for currency type). | | currency | string | 'USD' | Currency code for currency formatting (optional, only for currency type). | | customPattern | RegExp | undefined | Custom regular expression pattern for formatting (optional, used only if type is customPattern). | | onChange | function | undefined | Callback function called when the input changes. |

Additional Examples

Using Custom Pattern for Hex Color Code

<SmartInputFormatter
  customPattern={/[^a-fA-F0-9]/g}
  placeholder="#FFFFFF"
  onChange={(value) => console.log('Formatted hex color:', value)}
/>

<SmartInputFormatter
  type="currency"
  placeholder="Enter amount"
  locale="de-DE"
  currency="EUR"
/>

6. Contributing

Encourage other developers to contribute and explain how they can do so.

Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeature).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add your message').
  5. Push to the branch (git push origin feature/YourFeature).
  6. Open a Pull Request.