@contentful/mimetype
v2.4.1
Published
"Identify mimetypes and associate them with filegroups"
Downloads
54,799
Readme
contentful-mimetype []
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
andgroupNames.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.