New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@websdk/nap

Package Overview
Dependencies
Maintainers
2
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@websdk/nap - npm Package Compare versions

Comparing version 0.10.7 to 0.11.0

.nyc_output/2888.json

59

lib/nap.js

@@ -16,8 +16,8 @@ (function (global, factory) {

var nap = {
environment: {}
};
var nap = { environment: {} };
nap.web = newWeb;
nap.is = is;
nap.into = into;
nap.negotiate = {

@@ -28,2 +28,3 @@ selector: bySelector,

};
nap.responses = {

@@ -42,2 +43,5 @@ ok: ok,

if (!node) return;
// TODO: This breaks d3; presumably because there's a discrepancy in domino CustomEvent vs. jsdom CustomEvent
// node.dispatchEvent && node.dispatchEvent(new CustomEvent("update"))
res.body(node);

@@ -144,11 +148,12 @@ };

function bySelector() {
var options = toArray(arguments).reduce(function (curr, next) {
if (isStr(next)) curr.push({
selector: next
});else curr[curr.length - 1].fn = next;
if (isStr(next)) curr.push({ selector: next });else curr[curr.length - 1].fn = next;
return curr;
}, []);
return function (node, cb) {
var called = false,
cb = cb || noop;
called = options.some(function (option) {

@@ -161,2 +166,3 @@ if (is(node, option.selector)) {

});
if (!called) cb("No matching selector");

@@ -182,20 +188,30 @@ };

web.resource = function (name, ptn, handler) {
if (arguments.length == 1) return resources[name];
if (arguments.length == 2) {
web.resource = function (name, ptn, handler, metadata) {
if (arguments.length == 1) {
return resources[name];
} else if (arguments.length == 2) {
handler = ptn;
ptn = name;
} else if (arguments.length == 3 && typeof handler !== 'function') {
metadata = handler;
handler = ptn;
ptn = name;
}
metadata || (metadata = {});
handler = wrap(handler, middleware);
resources[name] = {
name: name,
ptn: ptn,
handler: handler
handler: handler,
metadata: metadata
};
routes.add(ptn, function (params) {
return {
fn: handler,
params: params
params: params,
metadata: metadata
};

@@ -206,7 +222,8 @@ });

web.find = find;
web.req = function (path, cb) {
var req = isStr(path) ? {
uri: path
} : path,
var req = isStr(path) ? { uri: path } : path,
cb = cb || noop;
req.web = web;

@@ -217,5 +234,4 @@ req.method || (req.method = "get");

req.headers.accept || (req.headers.accept = "application/x.nap.view");
var match = routes.match(req.uri) || {
fn: wrap(notFound, middleware)
};
var match = find(req.uri) || { fn: wrap(notFound, middleware) };
req.params = match.params;

@@ -233,5 +249,5 @@ match.fn.call(null, req, cb);

web.uri = function (ptn, params) {
var meta = resources[ptn];
if (meta) ptn = meta.ptn;
var parts = rhumb._parse(ptn);

@@ -243,3 +259,2 @@

}
return [uri, part.input].join("/");

@@ -250,2 +265,6 @@ }, "");

return web;
function find(path) {
return routes.match(path);
}
}

@@ -252,0 +271,0 @@

{
"name": "@websdk/nap",
"version": "0.10.7",
"version": "0.11.0",
"description": "Organizing applications into resources",

@@ -5,0 +5,0 @@ "main": "lib/nap.js",

@@ -175,10 +175,16 @@ var rhumb = require('@websdk/rhumb')

web.resource = function(name, ptn, handler){
if(arguments.length == 1) return resources[name]
if(arguments.length == 2) {
web.resource = function(name, ptn, handler, metadata) {
if (arguments.length == 1) {
return resources[name]
} else if (arguments.length == 2) {
handler = ptn
ptn = name
} else if (arguments.length == 3 && typeof handler !== 'function') {
metadata = handler
handler = ptn
ptn = name
}
metadata || (metadata = {})
handler = wrap(handler, middleware)

@@ -190,2 +196,3 @@

, handler : handler
, metadata : metadata
}

@@ -197,2 +204,3 @@

, params : params
, metadata: metadata
}

@@ -203,4 +211,5 @@ })

web.find = find
web.req = function(path, cb){
var req = isStr(path) ? {uri: path} : path

@@ -215,3 +224,3 @@ , cb = cb || noop

var match = routes.match(req.uri) || { fn : wrap(notFound, middleware) }
var match = find(req.uri) || { fn: wrap(notFound, middleware) }
req.params = match.params

@@ -246,4 +255,8 @@ match.fn.call(null, req, cb)

return web
function find(path) {
return routes.match(path)
}
}
module.exports = nap

@@ -88,2 +88,35 @@ var nap = require('../src/nap')

test('Web should return handler, params, and metadata when finding a resource by path', function(t) {
t.plan(12)
var web = nap.web()
, fn_a = function() {}
, fn_b = function() {}
, fn_c = function() {}
, fn_d = function() {}
web.resource('/no/metadata/no/params', fn_a)
var a = web.find('/no/metadata/no/params')
t.equal(a.fn, fn_a)
t.deepEqual(a.params, {})
t.deepEqual(a.metadata, {})
web.resource('/with/metadata/no/params', fn_b, { foo: 'bar' })
var b = web.find('/with/metadata/no/params')
t.equal(b.fn, fn_b)
t.deepEqual(b.params, {})
t.deepEqual(b.metadata, { foo: 'bar' })
web.resource('/{with}/metadata/and/{params}', fn_c, { baz: 'wibble' })
var c = web.find('/some/metadata/and/fun')
t.equal(c.fn, fn_c)
t.deepEqual(c.params, { with: 'some', params: 'fun' })
t.deepEqual(c.metadata, { baz: 'wibble' })
web.resource('named', '/also/{with}/metadata/and/{params}', fn_d, { boo: 'moo' })
var d = web.find('/also/some/metadata/and/fun')
t.equal(d.fn, fn_d)
t.deepEqual(d.params, { with: 'some', params: 'fun' })
t.deepEqual(d.metadata, { boo: 'moo' })
})
test("Web should respond with a 404 if no resource is found", function(t) {

@@ -90,0 +123,0 @@ t.plan(1)

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc