@internetarchive/donation-form-currency-validator

A currency input validator for the Internet Archive donation form

Usage no npm install needed!

<script type="module">
  import internetarchiveDonationFormCurrencyValidator from 'https://cdn.skypack.dev/@internetarchive/donation-form-currency-validator';
</script>

README

Internet Archive Donation Form Currency Validator

This is a small library used to validate currency as the user types into a text field.

Installation

npm i @internetarchive/donation-form-currency-validator

Usage

<script type="module">
  import { CurrencyValidator } from '@internetarchive/donation-form-currency-validator';

  const validator = new CurrencyValidator();
  const input = document.querySelector('#amount');
  input.addEventListener('keydown', validator.keydown);
</script>

Enter Amount: lt;input type="text" id="amount" />

Linting with ESLint, Prettier, and Types

To scan the project for linting errors, run

npm run lint

You can lint with ESLint and Prettier individually as well

npm run lint:eslint
npm run lint:prettier

To automatically fix many linting errors, run

npm run format

You can format using ESLint and Prettier individually as well

npm run format:eslint
npm run format:prettier

Testing with Karma

To run the suite of karma tests, run

npm run test

To run the tests in watch mode (for TDD, for example), run

npm run test:watch

Tooling configs

For most of the tools, the configuration is in the package.json to reduce the amount of files in your project.

If you customize the configuration a lot, you can consider moving them to individual files.

Local Demo with es-dev-server

npm start

To run a local development server that serves the basic demo located in demo/index.html