Security News
The Dark Side of Open Source
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
url-state
Advanced tools
Readme
Minimalist History API abstraction for building URL driven browser applications.
So your website feels like a native app but still has cool URLs. Or URIs, or whatever...
import url from 'url-state'
url.addEventListener('change', () => {
console.log(url.pathname, url.params)
})
url.push('/pathnames')
url.pop()
url.push('#hashes')
url.pop()
url.push('?query=strings')
url.query({ query: 'objects' }, true)
url.query({ query: null }, true)
url.pop()
import url from 'url-state'
Returns a UrlState
singleton. The first time url-state
is imported, it will globally hijack all link clicks and form submissions targeting the origin and begin listening for the popstate
event.
To get proper event sequencing, it's critical you do not use window.history.{pushState,replaceState,go,forward,back}()
directly. Use the methods below instead.
url.push([href][, replace])
Equivalent to window.history.go(href)
. If href
is ommited this is equivalent to window.history.forward()
href
String|Object{pathname,query,hash,replace}replace
Boolean; indicates to use replaceState instead of pushStateurl.replace(href)
Sugar for url.push(href, true)
.
url.pop()
Equivalent to window.history.back()
url.query(params[, replace])
Update window.location.search
without clobbering the existing query. Set keys to null
to remove them.
params
Objecthref
protocol
hostname
port
pathname
search
hash
host
origin
Read only. These properties are described in the URL spec.
init
Read only. True during the first history change and any nested changes.
back
Read only. True when the browser's back button has been clicked or url.pop()
was called.
params
Read only. A parsed search (query) string object.
virtual
Read/write. When true, window.history
is not manipulated. Push/replace/query methods function normally but back and forward (pop, push with no args) are disallowed. The default value is initialized to be true when running in a frame or progressive web app context but may be changed at any time.
$ npm run test
MIT
FAQs
Minimalist history API abstraction for building URL driven browser applications
The npm package url-state receives a total of 100 weekly downloads. As such, url-state popularity was classified as not popular.
We found that url-state 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
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
Research
Security News
The Socket Research team found this npm package includes code for collecting sensitive developer information, including your operating system username, Git username, and Git email.
Security News
OpenJS is warning of social engineering takeovers targeting open source projects after receiving a credible attempt on the foundation.