![npm](https://img.shields.io/npm/v/mime-matcher)
Motivation
MimeMatcher is very simple library for checking if mime type string is in allowed range.
You can also match mime types against wildcards, like */*
or 'application/*'
Instalation
You can install it from npm:
npm install mime-matcher --save
Or you can download mime-matcher.min.js
from the dist folder and then include it in html file:
<script src="mime-matcher.min.js"></script>
Usage
import MimeMatcher from 'mime-matcher'
const matcher = new MimeMatcher('image/gif')
matcher.match('image/gif')
matcher.match('image/jpeg')
You can also use wildcards:
import MimeMatcher from 'mime-matcher'
new MimeMatcher('image/*').match('image/gif')
new MimeMatcher('*/*').match('text/xml')
You can also use multiple mime types to match against:
import MimeMatcher from 'mime-matcher'
const matcher = new MimeMatcher('image/*', 'text/*')
matcher.match('text/xml')
matcher.match('image/gif')
matcher.match('audio/mpeg')
Optional mime type parameter is ignored:
import MimeMatcher from 'mime-matcher'
const matcher = new MimeMatcher('text/xml')
matcher.match('text/xml; encoding=utf-8')
You can also use higher-order function matcher
, which accepts expected types and returns another function, which you can use for matching:
import { matcher } from 'mime-matcher'
const m = matcher('text/*')
m('text/xml')
matcher('image/*', 'text/*')("image/gif")
There is also function parse
which returns object containing data of parsed mime-type:
import { parse as parseMimeType } from 'mime-matcher'
parseMimeType('application/json')
parseMimeType('text/xml; encoding=utf-8')
parseMimeType('invalid')
You can also import function isValid
as shorthand for checking validity:
import { isValid as isValidMimeType } from 'mime-matcher'
isValidMimeType('text/xml')