summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/har-validator/src/promise.js
diff options
context:
space:
mode:
authorKat Marchán <kzm@zkat.tech>2018-07-18 13:55:52 -0700
committerMichaël Zasso <targos@protonmail.com>2018-07-29 14:16:56 +0200
commit5842366ae83a36065d626e3937ad8fc327efab30 (patch)
tree663eb6d493b00788d83d7a71fc2489adabd24527 /deps/npm/node_modules/har-validator/src/promise.js
parent2aca0957f46af0be33368a1fcb398e63a35c46ef (diff)
downloadandroid-node-v8-5842366ae83a36065d626e3937ad8fc327efab30.tar.gz
android-node-v8-5842366ae83a36065d626e3937ad8fc327efab30.tar.bz2
android-node-v8-5842366ae83a36065d626e3937ad8fc327efab30.zip
deps: upgrade npm to 6.2.0
PR-URL: https://github.com/nodejs/node/pull/21592 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'deps/npm/node_modules/har-validator/src/promise.js')
-rw-r--r--deps/npm/node_modules/har-validator/src/promise.js93
1 files changed, 93 insertions, 0 deletions
diff --git a/deps/npm/node_modules/har-validator/src/promise.js b/deps/npm/node_modules/har-validator/src/promise.js
new file mode 100644
index 0000000000..57b067997f
--- /dev/null
+++ b/deps/npm/node_modules/har-validator/src/promise.js
@@ -0,0 +1,93 @@
+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)
+}