Socket
Socket
Sign inDemoInstall

mimos

Package Overview
Dependencies
2
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.0.0 to 2.0.1

28

lib/index.js

@@ -22,13 +22,22 @@ // Load modules

var result = options.override ? internals.compile(options.override) : internals.base;
this._byType = result.byType;
this._byExtension = result.byExtension;
};
internals.compile = function (override) {
var db = Hoek.clone(MimeDb);
Hoek.merge(db, options.override, true, false);
Hoek.merge(db, override, true, false);
this._byType = db;
this._byExtension = {};
var result = {
byType: db,
byExtension: {}
};
var keys = Object.keys(this._byType);
var keys = Object.keys(result.byType);
for (var i = 0, il = keys.length; i < il; i++) {
var type = keys[i];
var mime = this._byType[type];
var mime = result.byType[type];
mime.type = mime.type || type;

@@ -43,8 +52,13 @@ mime.source = mime.source || 'mime-db';

var ext = mime.extensions[j];
this._byExtension[ext] = mime;
result.byExtension[ext] = mime;
}
}
return result;
};
internals.base = internals.compile(); // Prevents an expensive copy on each constructor when no customization is needed
internals.Mimos.prototype.path = function (path) {

@@ -51,0 +65,0 @@

{
"name": "mimos",
"description": "Mime database interface",
"version": "2.0.0",
"version": "2.0.1",
"repository": "git://github.com/hapijs/mimos",

@@ -6,0 +6,0 @@ "main": "index",

@@ -27,5 +27,5 @@ // Load modules

var m = new Mimos();
var mimos = new Mimos();
expect(m.path('/static/javascript/app.js')).deep.equal({
expect(mimos.path('/static/javascript/app.js')).deep.equal({
source: 'iana',

@@ -42,5 +42,5 @@ charset: 'UTF-8',

var m = new Mimos();
var mimos = new Mimos();
expect(m.path('/static/javascript')).to.deep.equal({});
expect(mimos.path('/static/javascript')).to.deep.equal({});
done();

@@ -53,5 +53,5 @@ });

var upper = '/static/image/image.JPG';
var m = new Mimos();
var mimos = new Mimos();
expect(m.path(lower).type).to.equal(m.path(upper).type);
expect(mimos.path(lower).type).to.equal(mimos.path(upper).type);

@@ -66,5 +66,5 @@ done();

var m = new Mimos();
var mimos = new Mimos();
expect(m.type('text/plain')).to.deep.equal({
expect(mimos.type('text/plain')).to.deep.equal({
source: 'iana',

@@ -80,5 +80,5 @@ compressible: true,

var m = new Mimos();
var mimos = new Mimos();
expect(m.type('hapi/test')).to.deep.equal({
expect(mimos.type('hapi/test')).to.deep.equal({
source: 'hapi',

@@ -107,5 +107,5 @@ compressible: false,

var m = new Mimos(dbOverwrite);
expect(m.type('node/module')).to.deep.equal(nodeModule);
expect(m.path('/node_modules/node/module.npm')).to.deep.equal(nodeModule);
var mimos = new Mimos(dbOverwrite);
expect(mimos.type('node/module')).to.deep.equal(nodeModule);
expect(mimos.path('/node_modules/node/module.npm')).to.deep.equal(nodeModule);

@@ -130,6 +130,6 @@ done();

var m = new Mimos(dbOverwrite);
var mimos = new Mimos(dbOverwrite);
expect(m.type('application/javascript')).to.deep.equal(jsModule);
expect(m.path('/static/js/app.js')).to.deep.equal(jsModule);
expect(mimos.type('application/javascript')).to.deep.equal(jsModule);
expect(mimos.path('/static/js/app.js')).to.deep.equal(jsModule);

@@ -157,5 +157,5 @@ done();

var m = new Mimos(dbOverwrite);
var mimos = new Mimos(dbOverwrite);
var typeResult = m.type('application/javascript');
var typeResult = mimos.type('application/javascript');

@@ -167,3 +167,3 @@ expect(typeResult).to.deep.equal({

var pathResult = m.path('/static/js/app.js');
var pathResult = mimos.path('/static/js/app.js');

@@ -182,3 +182,3 @@ expect(pathResult).to.deep.equal({

var m = Mimos();
var mimos = Mimos();
}).to.throw('Mimos must be created with new');

@@ -193,3 +193,3 @@ done();

var m = new Mimos({
var mimos = new Mimos({
override: {

@@ -196,0 +196,0 @@ 'application/javascript': {

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc