mime.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. "use strict";
  2. require("core-js/modules/es.array.find");
  3. require("core-js/modules/es.array.includes");
  4. require("core-js/modules/es.array.slice");
  5. require("core-js/modules/es.object.entries");
  6. require("core-js/modules/es.regexp.exec");
  7. require("core-js/modules/es.string.includes");
  8. require("core-js/modules/es.string.split");
  9. Object.defineProperty(exports, "__esModule", {
  10. value: true
  11. });
  12. exports.getExtension = exports.getType = exports.addType = void 0;
  13. var mimeTypes = {};
  14. var findType = function findType(extension) {
  15. return Object.entries(mimeTypes).find(function (type) {
  16. return type[1].includes(extension);
  17. }) || [];
  18. };
  19. var addType = function addType(mime, extensions) {
  20. mimeTypes[mime] = extensions;
  21. };
  22. /**
  23. * Lookup a mime type based on extension
  24. * @param {string} path path to find extension for
  25. * @returns {string} mime found mime type
  26. */
  27. exports.addType = addType;
  28. var getType = function getType(path) {
  29. var pathParts = path.split('/').slice(-1);
  30. var extension = pathParts[pathParts.length - 1].split('.').pop();
  31. var type = findType(extension);
  32. return type[0];
  33. };
  34. /**
  35. * Return file extension associated with a mime type
  36. * @param {string} type mime type to look up
  37. * @returns {string} extension file extension
  38. */
  39. exports.getType = getType;
  40. var getExtension = function getExtension(type) {
  41. return (mimeTypes[type.toLowerCase()] || [])[0];
  42. };
  43. exports.getExtension = getExtension;
  44. //# sourceMappingURL=mime.js.map