UNPKG

mime-controller

Version:

Helps you find the file type easily.

180 lines (179 loc) 4.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.signatures = void 0; var validate_json_1 = require("./functions/validate-json"); var validate_xml_1 = require("./functions/validate-xml"); var validate_svg_1 = require("./functions/validate-svg"); var validate_html_1 = require("./functions/validate-html"); exports.signatures = { JPEG: { extension: 'jpg', magic_numbers: { start_with: ["FFD8FF"] }, mime: "image/jpeg" }, BMP: { extension: "bmp", magic_numbers: { start_with: ["424D"] }, mime: "image/bmp" }, PNG: { extension: "png", magic_numbers: { start_with: ["89504E470D0A1A0A"] }, mime: "image/png" }, GIF: { extension: "gif", magic_numbers: { contain: [ "474946383961", "474946383761" ] }, mime: "image/gif" }, ICO: { extension: "ico", magic_numbers: { start_with: ["00000100"] }, mime: 'image/vnd.microsoft.icon' }, MP3: { extension: "mp3", magic_numbers: { start_with: ["494433", "FFF3", "FFFB", "FFF2"] }, mime: 'audio/mpeg' }, AI: { extension: 'ai', mime: 'application/illustrator', magic_numbers: { contain: ['41646F626520496C6C7573747261746F72'] } }, PDF: { extension: "pdf", magic_numbers: { start_with: ["25504446"] }, mime: "application/pdf" }, ZIP: { extension: "zip", magic_numbers: { start_with: ["504B0304"] }, mime: "application/zip" }, JSON: { extension: 'json', mime: 'application/json', controller: validate_json_1.validateJSON }, SVG: { extension: 'svg', mime: 'image/svg+xml', controller: validate_svg_1.validateSVG }, XML: { extension: 'xml', mime: 'application/xmL', controller: validate_xml_1.validateXML }, WEBP: { extension: 'webp', mime: 'image/webp', magic_numbers: { start_with: ["52494646([0-9ABCDEF]){8}57454250"] } }, RAR_5: { extension: 'rar', magic_numbers: { start_with: ["526172211A070100"] }, mime: 'application/vnd.rar' }, RAR_1: { extension: 'rar', magic_numbers: { start_with: ["526172211A0700"] }, mime: 'application/vnd.rar' }, HTML: { extension: 'html', mime: 'text/html', controller: validate_html_1.validateHTML }, AVI: { extension: 'avi', mime: 'video/x-msvideo', magic_numbers: { start_with: ["52494646([0-9ABCDEF]){8}4156492"] } }, MP4: { extension: 'mp4', magic_numbers: { start_with: ["00000018667479706D703432"] }, mime: 'video/mp4' }, MPEG: { extension: 'mpeg', magic_numbers: { start_with: ["000001BA", "000001B3"] }, mime: 'video/mpeg' }, WAV: { extension: 'wav', magic_numbers: { start_with: ["52494646([0-9ABCDEF]){8}57415645"] }, mime: 'audio/wav' }, AAC: { extension: 'aac', magic_numbers: { start_with: ["FFF1", "FFF9"] }, mime: 'audio/aac' }, WEBM: { extension: 'webm', magic_numbers: { start_with: ["1A45DFA3"] }, mime: 'video/webm' }, XCF: { extension: 'xcf', magic_numbers: { start_with: ['67696D7020786366'] }, mime: 'image/x-xcf' }, PSD: { extension: 'psd', magic_numbers: { start_with: ['38425053'] }, mime: 'application/x-photoshop' }, OGG: { extension: 'ogg', mime: 'audio/ogg', magic_numbers: { start_with: ['4F676753'] } } };