Merge pull request #4919 from DeadAlready/master

easy-jsend
This commit is contained in:
Masahiro Wakame
2015-07-15 02:30:05 +09:00
2 changed files with 87 additions and 0 deletions
+49
View File
@@ -0,0 +1,49 @@
/// <reference path="./easy-jsend.d.ts" />
/// <reference path="../mongoose/mongoose.d.ts" />
import mongoose = require('mongoose');
import express = require('express');
import jSend = require('easy-jsend');
var schema = new mongoose.Schema({
name: {type: String}
});
var Model = mongoose.model('model', schema);
jSend.init({partial: true});
var app = express();
app.get('/success', function (req, res, next) {
res.success('Success');
});
app.get('/fail', function (req, res, next) {
res.fail('fail');
});
app.get('/error', function (req, res, next) {
res.error('error');
});
app.get('/partial', function (req, res, next) {
res.partial({
offset: 10,
limit: 50,
count: 100,
data: []
});
});
app.get('/partial', function (req, res, next) {
res.makePartial({
model: Model,
search: {},
opts: {
limit: 30,
skip: 10
},
result: []
});
});
+38
View File
@@ -0,0 +1,38 @@
// Type definitions for easy-jsend
// Project: https://github.com/DeadAlready/easy-jsend
// Definitions by: Karl Düüna <https://github.com/DeadAlready/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
/// <reference path="../express/express.d.ts" />
declare module Express {
interface MakePartialInput {
model:any;
opts: {
limit: number;
skip: number;
};
search: Object;
result: any;
}
interface PartialInput {
limit?: number;
offset: number;
count: number;
data: any;
}
export interface Response {
success (data?: any, status?: number): void;
fail (data: any, status?: number): void;
error (err: any): void;
partial? (data: PartialInput, status?: number): void;
makePartial? (data: MakePartialInput): void;
}
}
declare module "easy-jsend" {
export function init(conf?:{partial:boolean}): void;
}