Beta 7 with some repo names changed.

This commit is contained in:
Luis Fernando Molina committed 2020-11-15 13:05:19 +01:00
1 parent 0f7b40cca7
commit 963c19493a
3408 files changed
+462217 -15516

No files matched your search

+67
View File
@@ -0,0 +1,67 @@
function Caseless (dict) {
this.dict = dict || {}
}
Caseless.prototype.set = function (name, value, clobber) {
if (typeof name === 'object') {
for (var i in name) {
this.set(i, name[i], value)
}
} else {
if (typeof clobber === 'undefined') clobber = true
var has = this.has(name)
if (!clobber && has) this.dict[has] = this.dict[has] + ',' + value
else this.dict[has || name] = value
return has
}
}
Caseless.prototype.has = function (name) {
var keys = Object.keys(this.dict)
, name = name.toLowerCase()
;
for (var i=0;i<keys.length;i++) {
if (keys[i].toLowerCase() === name) return keys[i]
}
return false
}
Caseless.prototype.get = function (name) {
name = name.toLowerCase()
var result, _key
var headers = this.dict
Object.keys(headers).forEach(function (key) {
_key = key.toLowerCase()
if (name === _key) result = headers[key]
})
return result
}
Caseless.prototype.swap = function (name) {
var has = this.has(name)
if (has === name) return
if (!has) throw new Error('There is no header than matches "'+name+'"')
this.dict[name] = this.dict[has]
delete this.dict[has]
}
Caseless.prototype.del = function (name) {
var has = this.has(name)
return delete this.dict[has || name]
}
module.exports = function (dict) {return new Caseless(dict)}
module.exports.httpify = function (resp, headers) {
var c = new Caseless(headers)
resp.setHeader = function (key, value, clobber) {
if (typeof value === 'undefined') return
return c.set(key, value, clobber)
}
resp.hasHeader = function (key) {
return c.has(key)
}
resp.getHeader = function (key) {
return c.get(key)
}
resp.removeHeader = function (key) {
return c.del(key)
}
resp.headers = c.dict
return c
}
+56
View File
@@ -0,0 +1,56 @@
{
"_from": "caseless@~0.12.0",
"_id": "caseless@0.12.0",
"_inBundle": false,
"_integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
"_location": "/caseless",
"_phantomChildren": {},
"_requested": {
"type": "range",
"registry": true,
"raw": "caseless@~0.12.0",
"name": "caseless",
"escapedName": "caseless",
"rawSpec": "~0.12.0",
"saveSpec": null,
"fetchSpec": "~0.12.0"
},
"_requiredBy": [
"/request"
],
"_resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
"_shasum": "1b681c21ff84033c826543090689420d187151dc",
"_spec": "caseless@~0.12.0",
"_where": "C:\\Users\\Luis\\source\\repos\\AAMasters\\BackendServers\\node_modules\\request",
"author": {
"name": "Mikeal Rogers",
"email": "mikeal.rogers@gmail.com"
},
"bugs": {
"url": "https://github.com/mikeal/caseless/issues"
},
"bundleDependencies": false,
"deprecated": false,
"description": "Caseless object set/get/has, very useful when working with HTTP headers.",
"devDependencies": {
"tape": "^2.10.2"
},
"homepage": "https://github.com/mikeal/caseless#readme",
"keywords": [
"headers",
"http",
"caseless"
],
"license": "Apache-2.0",
"main": "index.js",
"name": "caseless",
"repository": {
"type": "git",
"url": "git+https://github.com/mikeal/caseless.git"
},
"scripts": {
"test": "node test.js"
},
"test": "node test.js",
"version": "0.12.0"
}
+67
View File
@@ -0,0 +1,67 @@
var tape = require('tape')
, caseless = require('./')
;
tape('set get has', function (t) {
var headers = {}
, c = caseless(headers)
;
t.plan(17)
c.set('a-Header', 'asdf')
t.equal(c.get('a-header'), 'asdf')
t.equal(c.has('a-header'), 'a-Header')
t.ok(!c.has('nothing'))
// old bug where we used the wrong regex
t.ok(!c.has('a-hea'))
c.set('a-header', 'fdsa')
t.equal(c.get('a-header'), 'fdsa')
t.equal(c.get('a-Header'), 'fdsa')
c.set('a-HEADER', 'more', false)
t.equal(c.get('a-header'), 'fdsa,more')
t.deepEqual(headers, {'a-Header': 'fdsa,more'})
c.swap('a-HEADER')
t.deepEqual(headers, {'a-HEADER': 'fdsa,more'})
c.set('deleteme', 'foobar')
t.ok(c.has('deleteme'))
t.ok(c.del('deleteme'))
t.notOk(c.has('deleteme'))
t.notOk(c.has('idonotexist'))
t.ok(c.del('idonotexist'))
c.set('tva', 'test1')
c.set('tva-header', 'test2')
t.equal(c.has('tva'), 'tva')
t.notOk(c.has('header'))
t.equal(c.get('tva'), 'test1')
})
tape('swap', function (t) {
var headers = {}
, c = caseless(headers)
;
t.plan(4)
// No Header to Swap.
t.throws(function () {
c.swap('content-type')
})
// Set Header.
c.set('content-type', 'application/json')
// Swap Header With Itself.
c.swap('content-type')
// Does Not Delete Itself.
t.ok(c.has('content-type'))
// Swap Header With a Different Header.
c.swap('Content-Type')
// Still Has Header.
t.ok(c.has('Content-Type'))
// Delete Header.
c.del('Content-Type')
// No Header to Swap.
t.throws(function () {
c.swap('content-type')
})
})