Logs Automatically purges themselves

This commit is contained in:
Luis Fernando Molina committed 2018-03-17 17:04:07 +01:00
1 parent fda24f934c
commit a42174b233
632 files changed
+19952 -20039

No files matched your search

+3 -24
View File
@@ -1,4 +1,4 @@
# HAR Validator [![version][npm-version]][npm-url] [![License][npm-license]][license-url]
# HAR Validator [![version][npm-version]][npm-url] [![License][license-image]][license-url]
> Extremely fast HTTP Archive ([HAR](https://github.com/ahmadnassri/har-spec/blob/master/versions/1.2.md)) validator using JSON Schema.
@@ -15,34 +15,13 @@
npm install --only=production --save har-validator
```
## Usage
I recommend using an optimized build matching your Node.js environment version, otherwise, the standard `require` would work just fine with any version of Node `>= v4.0` .
```js
/*
* Node 7
*/
const validate = require('har-validator/lib/node7')
/*
* Node 6
*/
const validate = require('har-validator/lib/node6')
/*
* Node 4 (Default)
*/
var validate = require('har-validator')
```
## CLI Usage
Please refer to [`har-cli`](https://github.com/ahmadnassri/har-cli) for more info.
## API
**Note**: as of [`v2.0.0`](https://github.com/ahmadnassri/har-validator/releases/tag/v2.0.0) this module defaults to Promise based API. *For backward comptability with `v1.x` an [async/callback API](docs/async.md) is also provided*
**Note**: as of [`v2.0.0`](https://github.com/ahmadnassri/har-validator/releases/tag/v2.0.0) this module defaults to Promise based API. *For backward compatibility with `v1.x` an [async/callback API](docs/async.md) is also provided*
- [async API](docs/async.md)
- [callback API](docs/async.md)
@@ -55,12 +34,12 @@ Please refer to [`har-cli`](https://github.com/ahmadnassri/har-cli) for more inf
> Twitter: [@ahmadnassri](https://twitter.com/ahmadnassri)
[license-url]: http://choosealicense.com/licenses/isc/
[license-image]: https://img.shields.io/github/license/ahmadnassri/har-validator.svg?style=flat-square
[travis-url]: https://travis-ci.org/ahmadnassri/har-validator
[travis-image]: https://img.shields.io/travis/ahmadnassri/har-validator.svg?style=flat-square
[npm-url]: https://www.npmjs.com/package/har-validator
[npm-license]: https://img.shields.io/npm/l/har-validator.svg?style=flat-square
[npm-version]: https://img.shields.io/npm/v/har-validator.svg?style=flat-square
[npm-downloads]: https://img.shields.io/npm/dm/har-validator.svg?style=flat-square
@@ -1,19 +1,21 @@
import * as schemas from 'har-schema'
import Ajv from 'ajv'
import HARError from './error'
var Ajv = require('ajv')
var HARError = require('./error')
var schemas = require('har-schema')
let ajv
var ajv
function validate (name, data, next) {
data = data || {}
export function validate (name, data = {}, next) {
// validator config
ajv = ajv || new Ajv({
allErrors: true,
schemas: schemas
})
let validate = ajv.getSchema(name + '.json')
var validate = ajv.getSchema(name + '.json')
let valid = validate(data)
var valid = validate(data)
// callback?
if (typeof next === 'function') {
@@ -23,74 +25,74 @@ export function validate (name, data = {}, next) {
return valid
}
export function afterRequest (data, next) {
exports.afterRequest = function (data, next) {
return validate('afterRequest', data, next)
}
export function beforeRequest (data, next) {
exports.beforeRequest = function (data, next) {
return validate('beforeRequest', data, next)
}
export function browser (data, next) {
exports.browser = function (data, next) {
return validate('browser', data, next)
}
export function cache (data, next) {
exports.cache = function (data, next) {
return validate('cache', data, next)
}
export function content (data, next) {
exports.content = function (data, next) {
return validate('content', data, next)
}
export function cookie (data, next) {
exports.cookie = function (data, next) {
return validate('cookie', data, next)
}
export function creator (data, next) {
exports.creator = function (data, next) {
return validate('creator', data, next)
}
export function entry (data, next) {
exports.entry = function (data, next) {
return validate('entry', data, next)
}
export function har (data, next) {
exports.har = function (data, next) {
return validate('har', data, next)
}
export function header (data, next) {
exports.header = function (data, next) {
return validate('header', data, next)
}
export function log (data, next) {
exports.log = function (data, next) {
return validate('log', data, next)
}
export function page (data, next) {
exports.page = function (data, next) {
return validate('page', data, next)
}
export function pageTimings (data, next) {
exports.pageTimings = function (data, next) {
return validate('pageTimings', data, next)
}
export function postData (data, next) {
exports.postData = function (data, next) {
return validate('postData', data, next)
}
export function query (data, next) {
exports.query = function (data, next) {
return validate('query', data, next)
}
export function request (data, next) {
exports.request = function (data, next) {
return validate('request', data, next)
}
export function response (data, next) {
exports.response = function (data, next) {
return validate('response', data, next)
}
export function timings (data, next) {
exports.timings = function (data, next) {
return validate('timings', data, next)
}
-96
View File
@@ -1,96 +0,0 @@
import * as schemas from 'har-schema';
import Ajv from 'ajv';
import HARError from './error';
let ajv;
export function validate(name, data = {}, next) {
// validator config
ajv = ajv || new Ajv({
allErrors: true,
schemas: schemas
});
let validate = ajv.getSchema(name + '.json');
let valid = validate(data);
// callback?
if (typeof next === 'function') {
return next(!valid ? new HARError(validate.errors) : null, valid);
}
return valid;
}
export function afterRequest(data, next) {
return validate('afterRequest', data, next);
}
export function beforeRequest(data, next) {
return validate('beforeRequest', data, next);
}
export function browser(data, next) {
return validate('browser', data, next);
}
export function cache(data, next) {
return validate('cache', data, next);
}
export function content(data, next) {
return validate('content', data, next);
}
export function cookie(data, next) {
return validate('cookie', data, next);
}
export function creator(data, next) {
return validate('creator', data, next);
}
export function entry(data, next) {
return validate('entry', data, next);
}
export function har(data, next) {
return validate('har', data, next);
}
export function header(data, next) {
return validate('header', data, next);
}
export function log(data, next) {
return validate('log', data, next);
}
export function page(data, next) {
return validate('page', data, next);
}
export function pageTimings(data, next) {
return validate('pageTimings', data, next);
}
export function postData(data, next) {
return validate('postData', data, next);
}
export function query(data, next) {
return validate('query', data, next);
}
export function request(data, next) {
return validate('request', data, next);
}
export function response(data, next) {
return validate('response', data, next);
}
export function timings(data, next) {
return validate('timings', data, next);
}
-15
View File
@@ -1,15 +0,0 @@
export default function HARError(errors) {
let message = 'validation failed';
this.name = 'HARError';
this.message = message;
this.errors = errors;
if (typeof Error.captureStackTrace === 'function') {
Error.captureStackTrace(this, this.constructor);
} else {
this.stack = new Error(message).stack;
}
}
HARError.prototype = Error.prototype;
-93
View File
@@ -1,93 +0,0 @@
import * as schemas from 'har-schema';
import Ajv from 'ajv';
import HARError from './error';
let ajv;
export function validate(name, data = {}) {
// validator config
ajv = ajv || new Ajv({
allErrors: true,
schemas: schemas
});
let validate = ajv.getSchema(name + '.json');
return new Promise((resolve, reject) => {
let valid = validate(data);
!valid ? reject(new HARError(validate.errors)) : resolve(data);
});
}
export function afterRequest(data) {
return validate('afterRequest', data);
}
export function beforeRequest(data) {
return validate('beforeRequest', data);
}
export function browser(data) {
return validate('browser', data);
}
export function cache(data) {
return validate('cache', data);
}
export function content(data) {
return validate('content', data);
}
export function cookie(data) {
return validate('cookie', data);
}
export function creator(data) {
return validate('creator', data);
}
export function entry(data) {
return validate('entry', data);
}
export function har(data) {
return validate('har', data);
}
export function header(data) {
return validate('header', data);
}
export function log(data) {
return validate('log', data);
}
export function page(data) {
return validate('page', data);
}
export function pageTimings(data) {
return validate('pageTimings', data);
}
export function postData(data) {
return validate('postData', data);
}
export function query(data) {
return validate('query', data);
}
export function request(data) {
return validate('request', data);
}
export function response(data) {
return validate('response', data);
}
export function timings(data) {
return validate('timings', data);
}
@@ -1,5 +1,5 @@
export default function HARError (errors) {
let message = 'validation failed'
function HARError (errors) {
var message = 'validation failed'
this.name = 'HARError'
this.message = message
@@ -13,3 +13,5 @@ export default function HARError (errors) {
}
HARError.prototype = Error.prototype
module.exports = HARError
-136
View File
@@ -1,136 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validate = validate;
exports.afterRequest = afterRequest;
exports.beforeRequest = beforeRequest;
exports.browser = browser;
exports.cache = cache;
exports.content = content;
exports.cookie = cookie;
exports.creator = creator;
exports.entry = entry;
exports.har = har;
exports.header = header;
exports.log = log;
exports.page = page;
exports.pageTimings = pageTimings;
exports.postData = postData;
exports.query = query;
exports.request = request;
exports.response = response;
exports.timings = timings;
var _harSchema = require('har-schema');
var schemas = _interopRequireWildcard(_harSchema);
var _ajv = require('ajv');
var _ajv2 = _interopRequireDefault(_ajv);
var _error = require('./error');
var _error2 = _interopRequireDefault(_error);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
var ajv = void 0;
function validate(name) {
var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var next = arguments[2];
// validator config
ajv = ajv || new _ajv2.default({
allErrors: true,
schemas: schemas
});
var validate = ajv.getSchema(name + '.json');
var valid = validate(data);
// callback?
if (typeof next === 'function') {
return next(!valid ? new _error2.default(validate.errors) : null, valid);
}
return valid;
}
function afterRequest(data, next) {
return validate('afterRequest', data, next);
}
function beforeRequest(data, next) {
return validate('beforeRequest', data, next);
}
function browser(data, next) {
return validate('browser', data, next);
}
function cache(data, next) {
return validate('cache', data, next);
}
function content(data, next) {
return validate('content', data, next);
}
function cookie(data, next) {
return validate('cookie', data, next);
}
function creator(data, next) {
return validate('creator', data, next);
}
function entry(data, next) {
return validate('entry', data, next);
}
function har(data, next) {
return validate('har', data, next);
}
function header(data, next) {
return validate('header', data, next);
}
function log(data, next) {
return validate('log', data, next);
}
function page(data, next) {
return validate('page', data, next);
}
function pageTimings(data, next) {
return validate('pageTimings', data, next);
}
function postData(data, next) {
return validate('postData', data, next);
}
function query(data, next) {
return validate('query', data, next);
}
function request(data, next) {
return validate('request', data, next);
}
function response(data, next) {
return validate('response', data, next);
}
function timings(data, next) {
return validate('timings', data, next);
}
-22
View File
@@ -1,22 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = HARError;
function HARError(errors) {
var message = 'validation failed';
this.name = 'HARError';
this.message = message;
this.errors = errors;
if (typeof Error.captureStackTrace === 'function') {
Error.captureStackTrace(this, this.constructor);
} else {
this.stack = new Error(message).stack;
}
}
HARError.prototype = Error.prototype;
module.exports = exports['default'];
-132
View File
@@ -1,132 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validate = validate;
exports.afterRequest = afterRequest;
exports.beforeRequest = beforeRequest;
exports.browser = browser;
exports.cache = cache;
exports.content = content;
exports.cookie = cookie;
exports.creator = creator;
exports.entry = entry;
exports.har = har;
exports.header = header;
exports.log = log;
exports.page = page;
exports.pageTimings = pageTimings;
exports.postData = postData;
exports.query = query;
exports.request = request;
exports.response = response;
exports.timings = timings;
var _harSchema = require('har-schema');
var schemas = _interopRequireWildcard(_harSchema);
var _ajv = require('ajv');
var _ajv2 = _interopRequireDefault(_ajv);
var _error = require('./error');
var _error2 = _interopRequireDefault(_error);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
var ajv = void 0;
function validate(name) {
var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
// validator config
ajv = ajv || new _ajv2.default({
allErrors: true,
schemas: schemas
});
var validate = ajv.getSchema(name + '.json');
return new Promise(function (resolve, reject) {
var valid = validate(data);
!valid ? reject(new _error2.default(validate.errors)) : resolve(data);
});
}
function afterRequest(data) {
return validate('afterRequest', data);
}
function beforeRequest(data) {
return validate('beforeRequest', data);
}
function browser(data) {
return validate('browser', data);
}
function cache(data) {
return validate('cache', data);
}
function content(data) {
return validate('content', data);
}
function cookie(data) {
return validate('cookie', data);
}
function creator(data) {
return validate('creator', data);
}
function entry(data) {
return validate('entry', data);
}
function har(data) {
return validate('har', data);
}
function header(data) {
return validate('header', data);
}
function log(data) {
return validate('log', data);
}
function page(data) {
return validate('page', data);
}
function pageTimings(data) {
return validate('pageTimings', data);
}
function postData(data) {
return validate('postData', data);
}
function query(data) {
return validate('query', data);
}
function request(data) {
return validate('request', data);
}
function response(data) {
return validate('response', data);
}
function timings(data) {
return validate('timings', data);
}
-133
View File
@@ -1,133 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validate = validate;
exports.afterRequest = afterRequest;
exports.beforeRequest = beforeRequest;
exports.browser = browser;
exports.cache = cache;
exports.content = content;
exports.cookie = cookie;
exports.creator = creator;
exports.entry = entry;
exports.har = har;
exports.header = header;
exports.log = log;
exports.page = page;
exports.pageTimings = pageTimings;
exports.postData = postData;
exports.query = query;
exports.request = request;
exports.response = response;
exports.timings = timings;
var _harSchema = require('har-schema');
var schemas = _interopRequireWildcard(_harSchema);
var _ajv = require('ajv');
var _ajv2 = _interopRequireDefault(_ajv);
var _error = require('./error');
var _error2 = _interopRequireDefault(_error);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
let ajv;
function validate(name, data = {}, next) {
// validator config
ajv = ajv || new _ajv2.default({
allErrors: true,
schemas: schemas
});
let validate = ajv.getSchema(name + '.json');
let valid = validate(data);
// callback?
if (typeof next === 'function') {
return next(!valid ? new _error2.default(validate.errors) : null, valid);
}
return valid;
}
function afterRequest(data, next) {
return validate('afterRequest', data, next);
}
function beforeRequest(data, next) {
return validate('beforeRequest', data, next);
}
function browser(data, next) {
return validate('browser', data, next);
}
function cache(data, next) {
return validate('cache', data, next);
}
function content(data, next) {
return validate('content', data, next);
}
function cookie(data, next) {
return validate('cookie', data, next);
}
function creator(data, next) {
return validate('creator', data, next);
}
function entry(data, next) {
return validate('entry', data, next);
}
function har(data, next) {
return validate('har', data, next);
}
function header(data, next) {
return validate('header', data, next);
}
function log(data, next) {
return validate('log', data, next);
}
function page(data, next) {
return validate('page', data, next);
}
function pageTimings(data, next) {
return validate('pageTimings', data, next);
}
function postData(data, next) {
return validate('postData', data, next);
}
function query(data, next) {
return validate('query', data, next);
}
function request(data, next) {
return validate('request', data, next);
}
function response(data, next) {
return validate('response', data, next);
}
function timings(data, next) {
return validate('timings', data, next);
}
-22
View File
@@ -1,22 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = HARError;
function HARError(errors) {
let message = 'validation failed';
this.name = 'HARError';
this.message = message;
this.errors = errors;
if (typeof Error.captureStackTrace === 'function') {
Error.captureStackTrace(this, this.constructor);
} else {
this.stack = new Error(message).stack;
}
}
HARError.prototype = Error.prototype;
module.exports = exports['default'];
-130
View File
@@ -1,130 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validate = validate;
exports.afterRequest = afterRequest;
exports.beforeRequest = beforeRequest;
exports.browser = browser;
exports.cache = cache;
exports.content = content;
exports.cookie = cookie;
exports.creator = creator;
exports.entry = entry;
exports.har = har;
exports.header = header;
exports.log = log;
exports.page = page;
exports.pageTimings = pageTimings;
exports.postData = postData;
exports.query = query;
exports.request = request;
exports.response = response;
exports.timings = timings;
var _harSchema = require('har-schema');
var schemas = _interopRequireWildcard(_harSchema);
var _ajv = require('ajv');
var _ajv2 = _interopRequireDefault(_ajv);
var _error = require('./error');
var _error2 = _interopRequireDefault(_error);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
let ajv;
function validate(name, data = {}) {
// validator config
ajv = ajv || new _ajv2.default({
allErrors: true,
schemas: schemas
});
let validate = ajv.getSchema(name + '.json');
return new Promise((resolve, reject) => {
let valid = validate(data);
!valid ? reject(new _error2.default(validate.errors)) : resolve(data);
});
}
function afterRequest(data) {
return validate('afterRequest', data);
}
function beforeRequest(data) {
return validate('beforeRequest', data);
}
function browser(data) {
return validate('browser', data);
}
function cache(data) {
return validate('cache', data);
}
function content(data) {
return validate('content', data);
}
function cookie(data) {
return validate('cookie', data);
}
function creator(data) {
return validate('creator', data);
}
function entry(data) {
return validate('entry', data);
}
function har(data) {
return validate('har', data);
}
function header(data) {
return validate('header', data);
}
function log(data) {
return validate('log', data);
}
function page(data) {
return validate('page', data);
}
function pageTimings(data) {
return validate('pageTimings', data);
}
function postData(data) {
return validate('postData', data);
}
function query(data) {
return validate('query', data);
}
function request(data) {
return validate('request', data);
}
function response(data) {
return validate('response', data);
}
function timings(data) {
return validate('timings', data);
}
-133
View File
@@ -1,133 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validate = validate;
exports.afterRequest = afterRequest;
exports.beforeRequest = beforeRequest;
exports.browser = browser;
exports.cache = cache;
exports.content = content;
exports.cookie = cookie;
exports.creator = creator;
exports.entry = entry;
exports.har = har;
exports.header = header;
exports.log = log;
exports.page = page;
exports.pageTimings = pageTimings;
exports.postData = postData;
exports.query = query;
exports.request = request;
exports.response = response;
exports.timings = timings;
var _harSchema = require('har-schema');
var schemas = _interopRequireWildcard(_harSchema);
var _ajv = require('ajv');
var _ajv2 = _interopRequireDefault(_ajv);
var _error = require('./error');
var _error2 = _interopRequireDefault(_error);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
let ajv;
function validate(name, data = {}, next) {
// validator config
ajv = ajv || new _ajv2.default({
allErrors: true,
schemas: schemas
});
let validate = ajv.getSchema(name + '.json');
let valid = validate(data);
// callback?
if (typeof next === 'function') {
return next(!valid ? new _error2.default(validate.errors) : null, valid);
}
return valid;
}
function afterRequest(data, next) {
return validate('afterRequest', data, next);
}
function beforeRequest(data, next) {
return validate('beforeRequest', data, next);
}
function browser(data, next) {
return validate('browser', data, next);
}
function cache(data, next) {
return validate('cache', data, next);
}
function content(data, next) {
return validate('content', data, next);
}
function cookie(data, next) {
return validate('cookie', data, next);
}
function creator(data, next) {
return validate('creator', data, next);
}
function entry(data, next) {
return validate('entry', data, next);
}
function har(data, next) {
return validate('har', data, next);
}
function header(data, next) {
return validate('header', data, next);
}
function log(data, next) {
return validate('log', data, next);
}
function page(data, next) {
return validate('page', data, next);
}
function pageTimings(data, next) {
return validate('pageTimings', data, next);
}
function postData(data, next) {
return validate('postData', data, next);
}
function query(data, next) {
return validate('query', data, next);
}
function request(data, next) {
return validate('request', data, next);
}
function response(data, next) {
return validate('response', data, next);
}
function timings(data, next) {
return validate('timings', data, next);
}
-22
View File
@@ -1,22 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = HARError;
function HARError(errors) {
let message = 'validation failed';
this.name = 'HARError';
this.message = message;
this.errors = errors;
if (typeof Error.captureStackTrace === 'function') {
Error.captureStackTrace(this, this.constructor);
} else {
this.stack = new Error(message).stack;
}
}
HARError.prototype = Error.prototype;
module.exports = exports['default'];
-130
View File
@@ -1,130 +0,0 @@
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validate = validate;
exports.afterRequest = afterRequest;
exports.beforeRequest = beforeRequest;
exports.browser = browser;
exports.cache = cache;
exports.content = content;
exports.cookie = cookie;
exports.creator = creator;
exports.entry = entry;
exports.har = har;
exports.header = header;
exports.log = log;
exports.page = page;
exports.pageTimings = pageTimings;
exports.postData = postData;
exports.query = query;
exports.request = request;
exports.response = response;
exports.timings = timings;
var _harSchema = require('har-schema');
var schemas = _interopRequireWildcard(_harSchema);
var _ajv = require('ajv');
var _ajv2 = _interopRequireDefault(_ajv);
var _error = require('./error');
var _error2 = _interopRequireDefault(_error);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
let ajv;
function validate(name, data = {}) {
// validator config
ajv = ajv || new _ajv2.default({
allErrors: true,
schemas: schemas
});
let validate = ajv.getSchema(name + '.json');
return new Promise((resolve, reject) => {
let valid = validate(data);
!valid ? reject(new _error2.default(validate.errors)) : resolve(data);
});
}
function afterRequest(data) {
return validate('afterRequest', data);
}
function beforeRequest(data) {
return validate('beforeRequest', data);
}
function browser(data) {
return validate('browser', data);
}
function cache(data) {
return validate('cache', data);
}
function content(data) {
return validate('content', data);
}
function cookie(data) {
return validate('cookie', data);
}
function creator(data) {
return validate('creator', data);
}
function entry(data) {
return validate('entry', data);
}
function har(data) {
return validate('har', data);
}
function header(data) {
return validate('header', data);
}
function log(data) {
return validate('log', data);
}
function page(data) {
return validate('page', data);
}
function pageTimings(data) {
return validate('pageTimings', data);
}
function postData(data) {
return validate('postData', data);
}
function query(data) {
return validate('query', data);
}
function request(data) {
return validate('request', data);
}
function response(data) {
return validate('response', data);
}
function timings(data) {
return validate('timings', data);
}
+95
View File
@@ -0,0 +1,95 @@
var Ajv = require('ajv')
var HARError = require('./error')
var schemas = require('har-schema')
var ajv
function validate (name, data) {
data = data || {}
// validator config
ajv = ajv || new Ajv({
allErrors: true,
schemas: schemas
})
var validate = ajv.getSchema(name + '.json')
return new Promise(function (resolve, reject) {
var valid = validate(data)
!valid ? reject(new HARError(validate.errors)) : resolve(data)
})
}
exports.afterRequest = function (data) {
return validate('afterRequest', data)
}
exports.beforeRequest = function (data) {
return validate('beforeRequest', data)
}
exports.browser = function (data) {
return validate('browser', data)
}
exports.cache = function (data) {
return validate('cache', data)
}
exports.content = function (data) {
return validate('content', data)
}
exports.cookie = function (data) {
return validate('cookie', data)
}
exports.creator = function (data) {
return validate('creator', data)
}
exports.entry = function (data) {
return validate('entry', data)
}
exports.har = function (data) {
return validate('har', data)
}
exports.header = function (data) {
return validate('header', data)
}
exports.log = function (data) {
return validate('log', data)
}
exports.page = function (data) {
return validate('page', data)
}
exports.pageTimings = function (data) {
return validate('pageTimings', data)
}
exports.postData = function (data) {
return validate('postData', data)
}
exports.query = function (data) {
return validate('query', data)
}
exports.request = function (data) {
return validate('request', data)
}
exports.response = function (data) {
return validate('response', data)
}
exports.timings = function (data) {
return validate('timings', data)
}
+32 -81
View File
@@ -1,127 +1,78 @@
{
"_args": [
[
"har-validator@~4.2.1",
"c:\\users\\luis\\source\\repos\\AACharly\\node_modules\\azure-storage\\node_modules\\request"
"har-validator@5.0.3",
"C:\\Users\\Luis\\source\\repos\\AACloud"
]
],
"_from": "har-validator@>=4.2.1-0 <4.3.0-0",
"_id": "har-validator@4.2.1",
"_inCache": true,
"_from": "har-validator@5.0.3",
"_id": "har-validator@5.0.3",
"_inBundle": false,
"_integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
"_location": "/har-validator",
"_nodeVersion": "4.8.0",
"_npmOperationalInternal": {
"host": "packages-12-west.internal.npmjs.com",
"tmp": "tmp/har-validator-4.2.1.tgz_1488636538686_0.5101928301155567"
},
"_npmUser": {
"email": "ahmad@ahmadnassri.com",
"name": "ahmadnassri"
},
"_npmVersion": "2.15.11",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "har-validator@5.0.3",
"name": "har-validator",
"raw": "har-validator@~4.2.1",
"rawSpec": "~4.2.1",
"scope": null,
"spec": ">=4.2.1-0 <4.3.0-0",
"type": "range"
"escapedName": "har-validator",
"rawSpec": "5.0.3",
"saveSpec": null,
"fetchSpec": "5.0.3"
},
"_requiredBy": [
"/azure-storage/request"
"/request"
],
"_resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz",
"_shasum": "33481d0f1bbff600dd203d75812a6a5fba002e2a",
"_shrinkwrap": null,
"_spec": "har-validator@~4.2.1",
"_where": "c:\\users\\luis\\source\\repos\\AACharly\\node_modules\\azure-storage\\node_modules\\request",
"_resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz",
"_spec": "5.0.3",
"_where": "C:\\Users\\Luis\\source\\repos\\AACloud",
"author": {
"email": "ahmad@ahmadnassri.com",
"name": "Ahmad Nassri",
"email": "ahmad@ahmadnassri.com",
"url": "https://www.ahmadnassri.com/"
},
"bugs": {
"url": "https://github.com/ahmadnassri/har-validator/issues"
},
"config": {
"commitizen": {
"path": "./node_modules/cz-conventional-changelog"
}
},
"dependencies": {
"ajv": "^4.9.1",
"har-schema": "^1.0.5"
"ajv": "^5.1.0",
"har-schema": "^2.0.0"
},
"description": "Extremely fast HTTP Archive (HAR) validator using JSON Schema",
"devDependencies": {
"babel-cli": "^6.18.0",
"babel-plugin-add-module-exports": "^0.2.1",
"babel-preset-env": "1.1.10",
"babel-register": "^6.18.0",
"codeclimate-test-reporter": "^0.4.0",
"cz-conventional-changelog": "^1.2.0",
"echint": "^4.0.1",
"semantic-release": "^6.3.2",
"snazzy": "^6.0.0",
"tap": "^10.0.0"
},
"directories": {},
"dist": {
"shasum": "33481d0f1bbff600dd203d75812a6a5fba002e2a",
"tarball": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz"
},
"echint": {
"ignore": [
"lib/**"
]
"standard": "^10.0.2",
"tap": "^10.3.2"
},
"engines": {
"node": ">=4"
},
"files": [
"lib",
"src"
"lib"
],
"gitHead": "06cb69e2da150de1643bfe511f0374f23b7a5b11",
"homepage": "https://github.com/ahmadnassri/har-validator",
"installable": true,
"keywords": [
"ajv",
"archive",
"cli",
"har",
"cli",
"ajv",
"http",
"archive",
"validate",
"validator"
],
"license": "ISC",
"main": "lib/node4/promise.js",
"maintainers": [
{
"name": "ahmadnassri",
"email": "ahmad@ahmadnassri.com"
}
],
"main": "lib/promise.js",
"name": "har-validator",
"optionalDependencies": {},
"repository": {
"type": "git",
"url": "git+https://github.com/ahmadnassri/har-validator.git"
},
"scripts": {
"codeclimate": "BABEL_ENV=test tap --coverage-report=text-lcov | codeclimate-test-reporter",
"compile": "babel -q src",
"coverage": "BABEL_ENV=test tap test --reporter silent --coverage --nyc-arg=--require --nyc-arg=babel-register",
"pretest": "snazzy && echint",
"semantic-release": "semantic-release pre && npm publish && semantic-release post",
"test": "BABEL_ENV=test tap test --reporter spec --node-arg=--require --node-arg=babel-register",
"test-one": "BABEL_ENV=test tap --reporter spec --node-arg=--require --node-arg=babel-register"
"coverage": "tap test --reporter silent --coverage",
"lint": "standard && echint",
"pretest": "npm run lint",
"test": "tap test"
},
"standard": {
"ignore": [
"lib/**"
]
},
"version": "4.2.1"
"version": "5.0.3"
}
-93
View File
@@ -1,93 +0,0 @@
import * as schemas from 'har-schema'
import Ajv from 'ajv'
import HARError from './error'
let ajv
export function validate (name, data = {}) {
// validator config
ajv = ajv || new Ajv({
allErrors: true,
schemas: schemas
})
let validate = ajv.getSchema(name + '.json')
return new Promise((resolve, reject) => {
let valid = validate(data)
!valid ? reject(new HARError(validate.errors)) : resolve(data)
})
}
export function afterRequest (data) {
return validate('afterRequest', data)
}
export function beforeRequest (data) {
return validate('beforeRequest', data)
}
export function browser (data) {
return validate('browser', data)
}
export function cache (data) {
return validate('cache', data)
}
export function content (data) {
return validate('content', data)
}
export function cookie (data) {
return validate('cookie', data)
}
export function creator (data) {
return validate('creator', data)
}
export function entry (data) {
return validate('entry', data)
}
export function har (data) {
return validate('har', data)
}
export function header (data) {
return validate('header', data)
}
export function log (data) {
return validate('log', data)
}
export function page (data) {
return validate('page', data)
}
export function pageTimings (data) {
return validate('pageTimings', data)
}
export function postData (data) {
return validate('postData', data)
}
export function query (data) {
return validate('query', data)
}
export function request (data) {
return validate('request', data)
}
export function response (data) {
return validate('response', data)
}
export function timings (data) {
return validate('timings', data)
}