Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
path-parser
Advanced tools
A small utility to parse and build paths. It can be used to partially or fully match paths against a defined pattern.
Partial match allows to determine if a given path starts with the defined pattern. It is used by route-node
var Path = require('path-parser');
// Defining a new path
var p = new Path('/users/profile/:id');
// Matching
p.match('/users/profile/00123') // => {id: "00123"}
// Partial matching: does this path
// starts with that pattern?
p.partialMatch('/users/profile/00123/orders') // => {id: "00123"}
p.partialMatch('/profile/00123/orders') // => false
// Building
p.build({id: '00123'}) // => "users/profile/00123"
:param
: for URL parameters;param
: for matrix parameters*splat
: for parameters spanning over multiple segments. Handle with care?param1¶m2
or ?:param1&:param2
: for query parameters. Colons :
are optionalFor URL parameters and matrix parameters, you can add a constraint in the form of a regular expression. Note that back slashes have to be escaped.
:param<\\d+>
will match numbers only for parameter param
;id<[a-fA-F0-9]{8}
will match 8 characters hexadecimal strings for parameter id
Constraints are also applied when building paths, unless specified otherwise (set second argument of build
to true).
// Path.build(params, ignore)
var Path = new Path('/users/profile/:id<\d+>');
path.build({id: 'not-a-number'}); // => Will throw an error
path.build({id: 'not-a-number'}, true); // => '/users/profile/not-a-number'
0.1.1 (2015-07-22)
<a name="0.1.0"></a>
FAQs
A small utility to parse, match and generate paths
The npm package path-parser receives a total of 56,100 weekly downloads. As such, path-parser popularity was classified as popular.
We found that path-parser demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.