url-params-parser
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/url-params-parser package

1.0.4 • Public • Published

URL Parser

version license Code climate

UrlParsers provides you with methods to parse named params and query params easily.

This package relies heavily in the native URL object (no need to reinvent the wheel). It just adds some extra methods to handle params (both query and named params).

import { UrlParser } from 'url-params-parser'

// UrlParser(url, placeholder)

const urlParser = UrlParser(
  "https://address.com/employees/show/1234/developer/reports/asc",
  "/employees/show/:id/:title/reports/:order"
)

urlParser.namedParams
// returns { id: "1234", title: "developer", order: "asc" }
)

Install

To install Url Parser:

with npm

npm i url-params-parser

with Yarn

yarn add url-params-parser

Usage

Initialize the object with a route and a placeholder. Example:

import { UrlParser } from 'url-params-parser'

// UrlParser(url, placeholder)

const urlParser = UrlParser(
  "https://address.com:99/employees/show/1234/developer/reports/asc/?climate=change&sea-level=rising#danger",
  "/employees/show/:id/:title/reports/:order"
)

namedParams

Returns an object with all the named params and their values

urlParser.namedParams
// returns { id: "1234", title: "developer", order: "asc" }

namedParamsKeys

Returns an array with all the named param keys

urlParser.namedParamsKeys
// returns ["id", "title", "order"]

namedParamsValues

Returns an array with all the named param values

urlParser.namedParamsValues
// returns ["1234", "developer", "asc"]

queryParams

Returns an object with all query params and their values

urlParser.queryParams
// returns { climate: "change", "sea-level": "rising" }

queryParamsKeys

Returns an array with all the query param values

urlParser.queryParamsKeys
// returns [ climate, "sea-level" ]

queryParamsValues

Returns an array with all the query param values

urlParser.queryParamsValues
// returns [ "change", "rising" ]

pathNames

Returns an array with all the elements of a pathname

urlParser.pathNames
// returns [ "employees", "show", "1234", "developer", "reports", "asc" ]

hash

Wrapper for URL().hash

urlParser.hash
// returns "#danger"

host

Wrapper for URL().host

urlParser.host
// returns "address.com:99"

hostname

Wrapper for URL().hostname

urlParser.hostname
// returns "address.com"

port

Wrapper for URL().port

urlParser.port
// returns "99"

pathname

Wrapper for URL().pathname

urlParser.pathname
// returns "/employees/show/1234/developer/reports/asc/"

protocol

Wrapper for URL().protocol

urlParser.protocol
// returns "https:"

search

Wrapper for URL().search

urlParser.search
// returns "?climate=change&sea-level=rising"

Credits

URL Parser has been developed by Jorge Alvarez.

Contributors

David Kiss

License

Released under MIT license

Package Sidebar

Install

npm i url-params-parser

Weekly Downloads

357

Version

1.0.4

License

MIT

Unpacked Size

14.8 kB

Total Files

7

Last publish

Collaborators

  • jorgegorka