react-dropzone/attr-accept

JavaScript implementation of the "accept" attribute for HTML5 input element

TypeScript

120

112 commits

updated Oct 11, 2026

See the code

README

attr-accept

JavaScript implementation of the "accept" attribute for HTML5 <input type="file">

npm Tests coverage

See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#attr-accept for more information.

Ships as both ES modules and CommonJS with bundled TypeScript type definitions.

Installation

npm install --save attr-accept

Usage

import accept from "attr-accept";

accept(
  {
    name: "my file.png",
    type: "image/png"
  },
  "image/*"
); // => true

accept(
  {
    name: "my file.json",
    type: "application/json"
  },
  "image/*"
); // => false

accept(
  {
    name: "my file.srt",
    type: ""
  },
  ".srt"
); // => true

You can also pass multiple mime types as a comma delimited string or array.

accept(
  {
    name: "my file.json",
    type: "application/json"
  },
  "application/json,video/*"
); // => true

accept(
  {
    name: "my file.json",
    type: "application/json"
  },
  ["application/json", "video/*"]
); // => true

In a CommonJS environment, use require instead:

const accept = require("attr-accept");

Contributing

Checkout the organization CONTRIBUTING.md.

file
file-validation

react-dropzone/attr-accept

JavaScript implementation of the "accept" attribute for HTML5 input element

TypeScript

120

112 commits

updated Oct 11, 2026

See the code

README

attr-accept

JavaScript implementation of the "accept" attribute for HTML5 <input type="file">

npm Tests coverage

See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#attr-accept for more information.

Ships as both ES modules and CommonJS with bundled TypeScript type definitions.

Installation

npm install --save attr-accept

Usage

import accept from "attr-accept";

accept(
  {
    name: "my file.png",
    type: "image/png"
  },
  "image/*"
); // => true

accept(
  {
    name: "my file.json",
    type: "application/json"
  },
  "image/*"
); // => false

accept(
  {
    name: "my file.srt",
    type: ""
  },
  ".srt"
); // => true

You can also pass multiple mime types as a comma delimited string or array.

accept(
  {
    name: "my file.json",
    type: "application/json"
  },
  "application/json,video/*"
); // => true

accept(
  {
    name: "my file.json",
    type: "application/json"
  },
  ["application/json", "video/*"]
); // => true

In a CommonJS environment, use require instead:

const accept = require("attr-accept");

Contributing

Checkout the organization CONTRIBUTING.md.

file
file-validation

Project health

Overall

4.8/10

Maintained

10/10

Code review

0/10
OpenSSF Scorecard

Latest release

4.0.1 · Oct 10, 2026

Releases this year

2

Significant stargazers

Adam Misiorny

20 followers · starred Mar 2017

码日光

25 followers · starred Jul 2020