Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
backbone.mq
Advanced tools
Readme
Backbone plugin to detect and listen to media queries.
Create a new MQ object to get started.
import MQ from 'backbone.mq'
const mq = new MQ()
Then add your media queries you would like to use.
mq.add('desktop', 'only screen and (min-width:60em)')
Or add multiple media queries.
mq.add({
'desktop': 'screen and (min-width:60em)',
'mobile': 'handheld or screen and (max-width:59.99em)'
})
Or add your media queries when you initialize your MQ object.
const mq = new MQ({
'desktop': 'screen and (min-width:60em)',
'mobile': 'handheld or screen and (max-width:59.99em)'
})
You can also remove media queries.
mq.remove('mobile')
At any point you can see if your media query matches.
const isDesktop = mq.matches('desktop') // -> boolean
if (isDesktop) {
// Do some desktopy things
}
Alternatively this works too.
mq.matches('desktop', function() {
// Also do some desktopy things
})
You can also listen for when a media query becomes matched or unmatched. The MQ object extends Backbone.Events, so enjoy making the most of it.
Events which are namespaced by :match
or :unmatch
are only triggered if the media query is matched or unmatched respectively.
mq.on('desktop', function (media) {
if (media.matches) {
// Do some desktopy things
} else {
// Or not
}
})
mq.once('mobile:match', function() {
// I'm on a phone!
})
backboneThing.listenTo(mq, 'desktop:unmatch', function() {
// Wait, we're not on a desktop any more? How did that happen?
})
mq.off('desktop')
Most methods on MQ are chainable.
mq
.add({
'desktop': 'screen and (min-width:60em)',
'mobile': 'handheld or screen and (max-width:59.99em)'
})
.matches('desktop', function() { /* ... */ })
.once('mobile', function() { /* ... */ })
.remove('desktop')
Except mq.matches()
with a single parameter, which returns a boolean :wink:
When matchMedia
or media queries isn't supported, MQ will fall back to a single media query. By default the first added media query will be used, but you're welcome to override it:
mq.fallback = 'mobile'; // Mobile first yo!
Backbone.MQ requires matchMedia
to work properly, so you might need a polyfill for older browsers.
MIT - see license
FAQs
Backbone plugin to detect and listen to media queries.
The npm package backbone.mq receives a total of 1 weekly downloads. As such, backbone.mq popularity was classified as not popular.
We found that backbone.mq 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
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.