validate-note
v1.4.0
Published
๐ผ Validates a note (scientific pitch notation) and throws errors if needed
Downloads
381
Maintainers
Readme
validate-note
๐ผ Validates a note (scientific pitch notation) and throws errors if needed
Usage
import validateNote from 'validate-note';
const note = validateNote('A#4');
console.log(note); // > { letter: 'A', signature: '#', octave: 4 }
Installation
Install via yarn
yarn add validate-note (--dev)
or npm
npm install validate-note (--save-dev)
configuration
You can pass in extra options (โ required, โ optional, โ๏ธ default)
import validateNote from 'validate-note';
const note = validateNote('Bb4', {
flatToSharp: true,
maxOctave: 5,
octave: true
});
console.log(note); // > { letter: 'A', signature: '#', octave: 4 }
โ maxOctave ( Number ) โ๏ธ 8
๐ max octave allowed
โ flatToSharp ( Boolean ) โ๏ธ false
๐ convert flats (b) to sharps (#)
โ octave ( Boolean ) โ๏ธ false
๐ octave is required
โน๏ธ A#
throws error, A#3
is a valid note
Builds
If you don't use a package manager, you can access validate-note
via unpkg (CDN), download the source, or point your package manager to the url.
validate-note
is compiled as a collection of CommonJS modules & ES2015 modules for bundlers that support the jsnext:main
or module
field in package.json (Rollup, Webpack 2)
The validate-note
package includes precompiled production and development UMD builds in the dist
folder. They can be used directly without a bundler and are thus compatible with many popular JavaScript module loaders and environments. You can drop a UMD build as a <script>
tag on your page. The UMD builds make validate-note
available as a window.validateNote
global variable.
License
The code is available under the MIT license.
Contributing
We are open to contributions, see CONTRIBUTING.md for more info.
Misc
This module was created using generator-module-boilerplate.