A library for detecting types for Scratch backend services that is optimized for the specific file types that Scratch services depend on.
Three possible use cases:
bufferCheck
, syncCheck
, asyncCheck
These will return null
if the type is not recognized.
If recognized, a JSON object will be returned of the form:
{ext: 'gif', mime: 'image/gif'}
Examples:
Synchronous check on if a filename includes an acceptable extension:
const assetTypes = require('scratch-asset-types');
const result = assetTypes.acceptableExtension('filename');
Synchronous check on a buffer:
const assetTypes = require('scratch-asset-types');
const result = assetTypes.bufferCheck(someBuffer);
Synchronous check on a filename:
const assetTypes = require('scratch-asset-types');
const result = assetTypes.syncCheck('full/path/to/filename');
Asynchronous check on a filename:
const assetTypes = require('scratch-asset-types');
assetTypes.asyncCheck('full/path/to/filename').then( ... );
There is no asynchronous check on a buffer as that would be highly inefficent.
This library is derived from the more general file-type npm module.