Merge pull request #3914 from florianholzapfel/master

Fixes Travis CI errors for pull request #3094
This commit is contained in:
Horiuchi_H
2015-03-20 09:07:34 +09:00
6 changed files with 187 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
/// <reference path="response-time.d.ts" />
import express = require('express');
import responseTime = require('response-time');
var app = express();
app.use(responseTime());
app.use(responseTime({
digits: 3,
header: 'X-Response-Time',
suffix: true
}));

38
response-time/response-time.d.ts vendored Normal file
View File

@@ -0,0 +1,38 @@
// Type definitions for response-time 2.2.0
// Project: https://github.com/expressjs/response-time
// Definitions by: Uros Smolnik <https://github.com/urossmolnik/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
/* =================== USAGE ===================
import responseTime = require('response-time');
app.use(responseTime());
=============================================== */
/// <reference path="../express/express.d.ts" />
declare module "response-time" {
import express = require('express');
/**
* Response time header for node.js
* Returns middleware that adds a X-Response-Time header to responses.
*/
function responseTime(options?: {
/**
* The fixed number of digits to include in the output, which is always in milliseconds, defaults to 3 (ex: 2.300ms).
*/
digits?: number;
/**
* The name of the header to set, defaults to X-Response-Time.
*/
header?: string;
/**
* Boolean to indicate if units of measurement suffix should be added to the output, defaults to true (ex: 2.300ms vs 2.300).
*/
suffix?: boolean;
}): express.RequestHandler;
export = responseTime;
}

View File

@@ -0,0 +1,9 @@
/// <reference path="serve-favicon.d.ts" />
import express = require('express');
import favicon = require('serve-favicon');
var app = express();
app.use(favicon(__dirname + '/public/favicon.ico', {
maxAge: 86400000
}));

29
serve-favicon/serve-favicon.d.ts vendored Normal file
View File

@@ -0,0 +1,29 @@
// Type definitions for serve-favicon 2.1.6
// Project: https://github.com/expressjs/serve-favicon
// Definitions by: Uros Smolnik <https://github.com/urossmolnik/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
/* =================== USAGE ===================
import serveFavicon = require('serve-favicon');
app.use(serveFavicon(__dirname + '/public/favicon.ico'));
=============================================== */
/// <reference path="../express/express.d.ts" />
declare module "serve-favicon" {
import express = require('express');
/**
* Node.js middleware for serving a favicon.
*/
function serveFavicon(path: string, options?: {
/**
* The cache-control max-age directive in ms, defaulting to 1 day. This can also be a string accepted by the ms module.
*/
maxAge?: number;
}): express.RequestHandler;
export = serveFavicon;
}

View File

@@ -0,0 +1,20 @@
/// <reference path="serve-static.d.ts" />
import express = require('express');
import serveStatic = require('serve-static');
var app = express();
app.use(serveStatic('/1'));
app.use(serveStatic('/2', { }));
app.use(serveStatic('/3', {
dotfiles: 'ignore',
etag: true,
extensions: ['html'],
index: true,
lastModified: true,
maxAge: 0,
redirect: true,
setHeaders: function(res: express.Response, path: string, stat: any) {
res.setHeader('Server', 'server-static middleware');
}
}));

79
serve-static/serve-static.d.ts vendored Normal file
View File

@@ -0,0 +1,79 @@
// Type definitions for serve-static 1.7.1
// Project: https://github.com/expressjs/serve-static
// Definitions by: Uros Smolnik <https://github.com/urossmolnik/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
/* =================== USAGE ===================
import serveStatic = require('serve-static');
app.use(serveStatic('public/ftp', {'index': ['default.html', 'default.htm']}))
=============================================== */
/// <reference path="../express/express.d.ts" />
declare module "serve-static" {
import express = require('express');
/**
* Create a new middleware function to serve files from within a given root directory.
* The file to serve will be determined by combining req.url with the provided root directory.
* When a file is not found, instead of sending a 404 response, this module will instead call next() to move on to the next middleware, allowing for stacking and fall-backs.
*/
function serveStatic(root: string, options?: {
/**
* Set how "dotfiles" are treated when encountered. A dotfile is a file or directory that begins with a dot (".").
* Note this check is done on the path itself without checking if the path actually exists on the disk.
* If root is specified, only the dotfiles above the root are checked (i.e. the root itself can be within a dotfile when when set to "deny").
* The default value is 'ignore'.
* 'allow' No special treatment for dotfiles
* 'deny' Send a 403 for any request for a dotfile
* 'ignore' Pretend like the dotfile does not exist and call next()
*/
dotfiles?: string;
/**
* Enable or disable etag generation, defaults to true.
*/
etag?: boolean;
/**
* Set file extension fallbacks. When set, if a file is not found, the given extensions will be added to the file name and search for.
* The first that exists will be served. Example: ['html', 'htm'].
* The default value is false.
*/
extensions?: string[];
/**
* By default this module will send "index.html" files in response to a request on a directory.
* To disable this set false or to supply a new index pass a string or an array in preferred order.
*/
index?: boolean;
/**
* Enable or disable Last-Modified header, defaults to true. Uses the file system's last modified value.
*/
lastModified?: boolean;
/**
* Provide a max-age in milliseconds for http caching, defaults to 0. This can also be a string accepted by the ms module.
*/
maxAge?: number;
/**
* Redirect to trailing "/" when the pathname is a dir. Defaults to true.
*/
redirect?: boolean;
/**
* Function to set custom headers on response. Alterations to the headers need to occur synchronously.
* The function is called as fn(res, path, stat), where the arguments are:
* res the response object
* path the file path that is being sent
* stat the stat object of the file that is being sent
*/
setHeaders?: (res: express.Response, path: string, stat: any) => any;
}): express.Handler;
export = serveStatic;
}