Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@contentful/mimetype

Package Overview
Dependencies
Maintainers
4
Versions
329
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@contentful/mimetype

"Identify mimetypes and associate them with filegroups"

  • 2.4.1
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
17K
increased by16.38%
Maintainers
4
Weekly downloads
 
Created
Source

contentful-mimetype [CircleCI] codecov

Mimetype handling and identification

This is mostly used by the UI to figure out which icons to show for different filetypes.

It does a best effort guess to figure out which icon to show, which might not always come out very accurate.

It should be updated over time with relevant file types and mime types and it is by no means a definitive representation of all available file types.

Glossary

  • type - A media/MIME type http://en.wikipedia.org/wiki/Internet_media_type
  • group - A group of types that corresponds to a more global type of media (ex: plaintext, image, video, audio, etc)
  • group name - the display name for a given group
  • group label - the label used to identify a group in fileGroups.json and groupNames.json

API

Options object used by various methods

The methods that take this object as a parameter will always try to use the type if available. If the type is not available or is undefined, it will use the file extension as a fallback. You can also provide a fallback file name from which the extension will be extracted if not provided.

/**
 * @typedef {object} mimetypeParams
 * @prop {string} type Content MIME type
 * @prop {string} fallbackExt Fallback extension
 * @prop {string} fallbackFileName Fallback file name
*/

getGroupNames

  /**
   * Gets list of names for groups of mimetypes
   *
   * @returns {object}
  */

getGroupName

  /**
   * Gets name of group file belongs to
   *
   * @param {mimetypeParams} mimetypeParams MIME type parameters
   * @returns {string}
  */

getGroupLabels

  /**
   * Gets list of labels for groups
   *
   * @returns {array}
  */

getGroupLabel

  /**
   * Gets label for group the file belongs to
   *
   * @param {mimetypeParams} mimetypeParams MIME type parameters
   * @returns {string}
  */

getExtension

  /**
   * Gets extension for a given filename
   *
   * @param {string} fileName
   * @returns {string} Extracted extension
   */

getTypesForGroup

  /**
   * Gets list of mimetypes for a group
   *
   * @param {string} groupLabel
   * @returns {array}
  */

hasPreview

  /**
   * Checks if file type is considered previewable
   *
   * @param {mimetypeParams} mimetypeParams MIME type parameters
   * @returns {boolean}
  */

typeExists

  /**
   * Checks if type exists
   *
   * @param {mimetypeParams} mimetypeParams MIME type parameters
   * @returns {boolean}
  */

getValidTypes

  /**
   * Gets list of types for all groups
   *
   * @returns {array}
  */

License

This repository is published under the MIT license.

Keywords

FAQs

Package last updated on 09 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc