Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

mqfunctions

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mqfunctions - npm Package Compare versions

Comparing version 0.1.0-alpha.1 to 0.1.0-alpha.2

dist/MqFunctions.d.ts

8

dist/addMqFunction.d.ts

@@ -1,2 +0,6 @@

import type { MqFunctions, HandlerFunction } from './index.d';
export declare const addMqFunction: (mqf: MqFunctions, id: string, fn: HandlerFunction) => void;
import type { MqFunctions, HandlerFunction } from './MqFunctions'
export declare const addMqFunction: (
mqf: MqFunctions,
id: string,
fn: HandlerFunction,
) => void

@@ -1,2 +0,2 @@

import type { MqFunctions } from './index.d';
export declare const createMqFunctions: (query: string) => MqFunctions;
import type { MqFunctions } from './MqFunctions'
export declare const createMqFunctions: (query: string) => MqFunctions

@@ -0,7 +1,15 @@

export type { MqFunctions, HandlerEvent, HandlerFunction } from './MqFunctions'
declare const _default: {
createMqFunctions: (query: string) => import(".").MqFunctions;
addMqFunction: (mqf: import(".").MqFunctions, id: string, fn: import(".").HandlerFunction) => void;
removeMqFunction: (mqf: import(".").MqFunctions, id: string) => void;
runMqFunction: (mqf: import(".").MqFunctions, id: string) => void;
};
export default _default;
createMqFunctions: (query: string) => import('./MqFunctions').MqFunctions
addMqFunction: (
mqf: import('./MqFunctions').MqFunctions,
id: string,
fn: import('./MqFunctions').HandlerFunction,
) => void
removeMqFunction: (
mqf: import('./MqFunctions').MqFunctions,
id: string,
) => void
runMqFunction: (mqf: import('./MqFunctions').MqFunctions, id: string) => void
}
export default _default
/*!
Mqfunctions.js v0.1.0
Mqfunctions.js v0.1.0-alpha.2
https://github.com/kimulaco/mqfunctions

@@ -7,84 +7,84 @@ Released under the MIT License.

const createMqFunctions = (query) => {
if (!query) {
throw new Error('required query');
}
const functions = new Map();
return {
functions,
mql: window.matchMedia(query),
_handleChange: (event) => {
if (functions.size <= 0) {
return;
}
for (const [, fn] of functions) {
fn(event);
}
},
};
};
if (!query) {
throw new Error('required query')
}
const functions = new Map()
return {
functions,
mql: window.matchMedia(query),
_handleChange: (event) => {
if (functions.size <= 0) {
return
}
for (const [, fn] of functions) {
fn(event)
}
},
}
}
const addEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.addEventListener('change', handler);
return;
}
// Fallback for legacy browser
mql.addListener(handler);
};
if (typeof mql.addEventListener === 'function') {
mql.addEventListener('change', handler)
return
}
// Fallback for legacy browser
mql.addListener(handler)
}
const removeEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.removeEventListener('change', handler);
}
// Fallback for legacy browser
mql.removeListener(handler);
};
if (typeof mql.addEventListener === 'function') {
mql.removeEventListener('change', handler)
}
// Fallback for legacy browser
mql.removeListener(handler)
}
const addMqFunction = (mqf, id, fn) => {
if (!id) {
throw new Error('required function id');
}
if (mqf.functions.has(id)) {
throw new Error(`${id} has already been added`);
}
mqf.functions.set(id, fn);
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf));
addEventListener(mqf.mql, mqf._handleChange.bind(mqf));
};
if (!id) {
throw new Error('required function id')
}
if (mqf.functions.has(id)) {
throw new Error(`${id} has already been added`)
}
mqf.functions.set(id, fn)
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf))
addEventListener(mqf.mql, mqf._handleChange.bind(mqf))
}
const removeMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id');
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`);
}
mqf.functions.delete(id);
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf));
addEventListener(mqf.mql, mqf._handleChange.bind(mqf));
};
if (!id) {
throw new Error('required function id')
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`)
}
mqf.functions.delete(id)
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf))
addEventListener(mqf.mql, mqf._handleChange.bind(mqf))
}
const runMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id');
if (!id) {
throw new Error('required function id')
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`)
}
const fn = mqf.functions.get(id)
const _handleChange = (_mql) => {
if (typeof fn === 'function') {
fn(_mql)
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`);
}
const fn = mqf.functions.get(id);
const _handleChange = (_mql) => {
if (typeof fn === 'function') {
fn(_mql);
}
};
_handleChange(mqf.mql);
};
}
_handleChange(mqf.mql)
}
var index = {
createMqFunctions,
addMqFunction,
removeMqFunction,
runMqFunction,
};
createMqFunctions,
addMqFunction,
removeMqFunction,
runMqFunction,
}
export { index as default };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVNcUZ1bmN0aW9ucy50cyIsIi4uL3NyYy91dGlscy9ldmVudExpc3RlbmVyLnRzIiwiLi4vc3JjL2FkZE1xRnVuY3Rpb24udHMiLCIuLi9zcmMvcmVtb3ZlTXFGdW5jdGlvbi50cyIsIi4uL3NyYy9ydW5NcUZ1bmN0aW9uLnRzIiwiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiwgSGFuZGxlckV2ZW50IH0gZnJvbSAnLi9pbmRleC5kJ1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTXFGdW5jdGlvbnMgPSAocXVlcnk6IHN0cmluZyk6IE1xRnVuY3Rpb25zID0+IHtcbiAgaWYgKCFxdWVyeSkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgcXVlcnknKVxuICB9XG5cbiAgY29uc3QgZnVuY3Rpb25zID0gbmV3IE1hcDxzdHJpbmcsIEhhbmRsZXJGdW5jdGlvbj4oKVxuXG4gIHJldHVybiB7XG4gICAgZnVuY3Rpb25zLFxuICAgIG1xbDogd2luZG93Lm1hdGNoTWVkaWEocXVlcnkpLFxuICAgIF9oYW5kbGVDaGFuZ2U6IChldmVudDogSGFuZGxlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgICBpZiAoZnVuY3Rpb25zLnNpemUgPD0gMCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgZm9yIChjb25zdCBbLCBmbl0gb2YgZnVuY3Rpb25zKSB7XG4gICAgICAgIGZuKGV2ZW50KVxuICAgICAgfVxuICAgIH0sXG4gIH1cbn1cbiIsImV4cG9ydCBjb25zdCBhZGRFdmVudExpc3RlbmVyID0gKFxuICBtcWw6IE1lZGlhUXVlcnlMaXN0LFxuICBoYW5kbGVyOiAoZXZlbnQ6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHZvaWQsXG4pID0+IHtcbiAgaWYgKHR5cGVvZiBtcWwuYWRkRXZlbnRMaXN0ZW5lciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIG1xbC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBoYW5kbGVyKVxuICAgIHJldHVyblxuICB9XG4gIC8vIEZhbGxiYWNrIGZvciBsZWdhY3kgYnJvd3NlclxuICBtcWwuYWRkTGlzdGVuZXIoaGFuZGxlcilcbn1cblxuZXhwb3J0IGNvbnN0IHJlbW92ZUV2ZW50TGlzdGVuZXIgPSAoXG4gIG1xbDogTWVkaWFRdWVyeUxpc3QsXG4gIGhhbmRsZXI6IChldmVudDogTWVkaWFRdWVyeUxpc3RFdmVudCkgPT4gdm9pZCxcbikgPT4ge1xuICBpZiAodHlwZW9mIG1xbC5hZGRFdmVudExpc3RlbmVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgbXFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGhhbmRsZXIpXG4gIH1cbiAgLy8gRmFsbGJhY2sgZm9yIGxlZ2FjeSBicm93c2VyXG4gIG1xbC5yZW1vdmVMaXN0ZW5lcihoYW5kbGVyKVxufVxuIiwiaW1wb3J0IHR5cGUgeyBNcUZ1bmN0aW9ucywgSGFuZGxlckZ1bmN0aW9uIH0gZnJvbSAnLi9pbmRleC5kJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IGFkZE1xRnVuY3Rpb24gPSAoXG4gIG1xZjogTXFGdW5jdGlvbnMsXG4gIGlkOiBzdHJpbmcsXG4gIGZuOiBIYW5kbGVyRnVuY3Rpb24sXG4pOiB2b2lkID0+IHtcbiAgaWYgKCFpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgZnVuY3Rpb24gaWQnKVxuICB9XG4gIGlmIChtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGhhcyBhbHJlYWR5IGJlZW4gYWRkZWRgKVxuICB9XG5cbiAgbXFmLmZ1bmN0aW9ucy5zZXQoaWQsIGZuKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zIH0gZnJvbSAnLi9pbmRleC5kJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IHJlbW92ZU1xRnVuY3Rpb24gPSAobXFmOiBNcUZ1bmN0aW9ucywgaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKCFtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGRvZXMgbm90IGV4aXN0YClcbiAgfVxuXG4gIG1xZi5mdW5jdGlvbnMuZGVsZXRlKGlkKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zLCBIYW5kbGVyRXZlbnQgfSBmcm9tICcuL2luZGV4LmQnXG5cbmV4cG9ydCBjb25zdCBydW5NcUZ1bmN0aW9uID0gKG1xZjogTXFGdW5jdGlvbnMsIGlkOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgaWYgKCFpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgZnVuY3Rpb24gaWQnKVxuICB9XG4gIGlmICghbXFmLmZ1bmN0aW9ucy5oYXMoaWQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGAke2lkfSBkb2VzIG5vdCBleGlzdGApXG4gIH1cblxuICBjb25zdCBmbiA9IG1xZi5mdW5jdGlvbnMuZ2V0KGlkKVxuICBjb25zdCBfaGFuZGxlQ2hhbmdlID0gKF9tcWw6IEhhbmRsZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGZuKF9tcWwpXG4gICAgfVxuICB9XG5cbiAgX2hhbmRsZUNoYW5nZShtcWYubXFsKVxufVxuIiwiaW1wb3J0IHsgY3JlYXRlTXFGdW5jdGlvbnMgfSBmcm9tICcuL2NyZWF0ZU1xRnVuY3Rpb25zJ1xuaW1wb3J0IHsgYWRkTXFGdW5jdGlvbiB9IGZyb20gJy4vYWRkTXFGdW5jdGlvbidcbmltcG9ydCB7IHJlbW92ZU1xRnVuY3Rpb24gfSBmcm9tICcuL3JlbW92ZU1xRnVuY3Rpb24nXG5pbXBvcnQgeyBydW5NcUZ1bmN0aW9uIH0gZnJvbSAnLi9ydW5NcUZ1bmN0aW9uJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNyZWF0ZU1xRnVuY3Rpb25zLFxuICBhZGRNcUZ1bmN0aW9uLFxuICByZW1vdmVNcUZ1bmN0aW9uLFxuICBydW5NcUZ1bmN0aW9uLFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRU8sTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQWEsS0FBaUI7SUFDOUQsSUFBSSxDQUFDLEtBQUssRUFBRTtBQUNWLFFBQUEsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ2xDLEtBQUE7QUFFRCxJQUFBLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxFQUEyQixDQUFBO0lBRXBELE9BQU87UUFDTCxTQUFTO0FBQ1QsUUFBQSxHQUFHLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7QUFDN0IsUUFBQSxhQUFhLEVBQUUsQ0FBQyxLQUFtQixLQUFVO0FBQzNDLFlBQUEsSUFBSSxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRTtnQkFDdkIsT0FBTTtBQUNQLGFBQUE7QUFFRCxZQUFBLEtBQUssTUFB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
export { index as default }
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVNcUZ1bmN0aW9ucy50cyIsIi4uL3NyYy91dGlscy9ldmVudExpc3RlbmVyLnRzIiwiLi4vc3JjL2FkZE1xRnVuY3Rpb24udHMiLCIuLi9zcmMvcmVtb3ZlTXFGdW5jdGlvbi50cyIsIi4uL3NyYy9ydW5NcUZ1bmN0aW9uLnRzIiwiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiwgSGFuZGxlckV2ZW50IH0gZnJvbSAnLi9NcUZ1bmN0aW9ucydcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZU1xRnVuY3Rpb25zID0gKHF1ZXJ5OiBzdHJpbmcpOiBNcUZ1bmN0aW9ucyA9PiB7XG4gIGlmICghcXVlcnkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlcXVpcmVkIHF1ZXJ5JylcbiAgfVxuXG4gIGNvbnN0IGZ1bmN0aW9ucyA9IG5ldyBNYXA8c3RyaW5nLCBIYW5kbGVyRnVuY3Rpb24+KClcblxuICByZXR1cm4ge1xuICAgIGZ1bmN0aW9ucyxcbiAgICBtcWw6IHdpbmRvdy5tYXRjaE1lZGlhKHF1ZXJ5KSxcbiAgICBfaGFuZGxlQ2hhbmdlOiAoZXZlbnQ6IEhhbmRsZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKGZ1bmN0aW9ucy5zaXplIDw9IDApIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgWywgZm5dIG9mIGZ1bmN0aW9ucykge1xuICAgICAgICBmbihldmVudClcbiAgICAgIH1cbiAgICB9LFxuICB9XG59XG4iLCJleHBvcnQgY29uc3QgYWRkRXZlbnRMaXN0ZW5lciA9IChcbiAgbXFsOiBNZWRpYVF1ZXJ5TGlzdCxcbiAgaGFuZGxlcjogKGV2ZW50OiBNZWRpYVF1ZXJ5TGlzdEV2ZW50KSA9PiB2b2lkLFxuKSA9PiB7XG4gIGlmICh0eXBlb2YgbXFsLmFkZEV2ZW50TGlzdGVuZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICBtcWwuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgaGFuZGxlcilcbiAgICByZXR1cm5cbiAgfVxuICAvLyBGYWxsYmFjayBmb3IgbGVnYWN5IGJyb3dzZXJcbiAgbXFsLmFkZExpc3RlbmVyKGhhbmRsZXIpXG59XG5cbmV4cG9ydCBjb25zdCByZW1vdmVFdmVudExpc3RlbmVyID0gKFxuICBtcWw6IE1lZGlhUXVlcnlMaXN0LFxuICBoYW5kbGVyOiAoZXZlbnQ6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHZvaWQsXG4pID0+IHtcbiAgaWYgKHR5cGVvZiBtcWwuYWRkRXZlbnRMaXN0ZW5lciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIG1xbC5yZW1vdmVFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBoYW5kbGVyKVxuICB9XG4gIC8vIEZhbGxiYWNrIGZvciBsZWdhY3kgYnJvd3NlclxuICBtcWwucmVtb3ZlTGlzdGVuZXIoaGFuZGxlcilcbn1cbiIsImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiB9IGZyb20gJy4vTXFGdW5jdGlvbnMnXG5pbXBvcnQgeyBhZGRFdmVudExpc3RlbmVyLCByZW1vdmVFdmVudExpc3RlbmVyIH0gZnJvbSAnLi91dGlscy9ldmVudExpc3RlbmVyJ1xuXG5leHBvcnQgY29uc3QgYWRkTXFGdW5jdGlvbiA9IChcbiAgbXFmOiBNcUZ1bmN0aW9ucyxcbiAgaWQ6IHN0cmluZyxcbiAgZm46IEhhbmRsZXJGdW5jdGlvbixcbik6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKG1xZi5mdW5jdGlvbnMuaGFzKGlkKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHtpZH0gaGFzIGFscmVhZHkgYmVlbiBhZGRlZGApXG4gIH1cblxuICBtcWYuZnVuY3Rpb25zLnNldChpZCwgZm4pXG4gIHJlbW92ZUV2ZW50TGlzdGVuZXIobXFmLm1xbCwgbXFmLl9oYW5kbGVDaGFuZ2UuYmluZChtcWYpKVxuICBhZGRFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbn1cbiIsImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMgfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IHJlbW92ZU1xRnVuY3Rpb24gPSAobXFmOiBNcUZ1bmN0aW9ucywgaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKCFtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGRvZXMgbm90IGV4aXN0YClcbiAgfVxuXG4gIG1xZi5mdW5jdGlvbnMuZGVsZXRlKGlkKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zLCBIYW5kbGVyRXZlbnQgfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuXG5leHBvcnQgY29uc3QgcnVuTXFGdW5jdGlvbiA9IChtcWY6IE1xRnVuY3Rpb25zLCBpZDogc3RyaW5nKTogdm9pZCA9PiB7XG4gIGlmICghaWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlcXVpcmVkIGZ1bmN0aW9uIGlkJylcbiAgfVxuICBpZiAoIW1xZi5mdW5jdGlvbnMuaGFzKGlkKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHtpZH0gZG9lcyBub3QgZXhpc3RgKVxuICB9XG5cbiAgY29uc3QgZm4gPSBtcWYuZnVuY3Rpb25zLmdldChpZClcbiAgY29uc3QgX2hhbmRsZUNoYW5nZSA9IChfbXFsOiBIYW5kbGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBmbihfbXFsKVxuICAgIH1cbiAgfVxuXG4gIF9oYW5kbGVDaGFuZ2UobXFmLm1xbClcbn1cbiIsImltcG9ydCB7IGNyZWF0ZU1xRnVuY3Rpb25zIH0gZnJvbSAnLi9jcmVhdGVNcUZ1bmN0aW9ucydcbmltcG9ydCB7IGFkZE1xRnVuY3Rpb24gfSBmcm9tICcuL2FkZE1xRnVuY3Rpb24nXG5pbXBvcnQgeyByZW1vdmVNcUZ1bmN0aW9uIH0gZnJvbSAnLi9yZW1vdmVNcUZ1bmN0aW9uJ1xuaW1wb3J0IHsgcnVuTXFGdW5jdGlvbiB9IGZyb20gJy4vcnVuTXFGdW5jdGlvbidcblxuZXhwb3J0IHR5cGUgeyBNcUZ1bmN0aW9ucywgSGFuZGxlckV2ZW50LCBIYW5kbGVyRnVuY3Rpb24gfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNyZWF0ZU1xRnVuY3Rpb25zLFxuICBhZGRNcUZ1bmN0aW9uLFxuICByZW1vdmVNcUZ1bmN0aW9uLFxuICBydW5NcUZ1bmN0aW9uLFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRU8sTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQWEsS0FBaUI7SUFDOUQsSUFBSSxDQUFDLEtBQUssRUFBRTtBQUNWLFFBQUEsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ2xDLEtBQUE7QUFFRCxJQUFBLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxFQUEyQixDQUFBO0lBRXBELE9BQU87UUFDTCxTQUFTO0FBQ1QsUUFBQSxHQUFHLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7QUFDN0IsUUFBQSxhQUFhLEVBQUUsQ0FB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
/*!
Mqfunctions.js v0.1.0
Mqfunctions.js v0.1.0-alpha.2
https://github.com/kimulaco/mqfunctions
Released under the MIT License.
*/
'use strict';
'use strict'
const createMqFunctions = (query) => {
if (!query) {
throw new Error('required query');
}
const functions = new Map();
return {
functions,
mql: window.matchMedia(query),
_handleChange: (event) => {
if (functions.size <= 0) {
return;
}
for (const [, fn] of functions) {
fn(event);
}
},
};
};
if (!query) {
throw new Error('required query')
}
const functions = new Map()
return {
functions,
mql: window.matchMedia(query),
_handleChange: (event) => {
if (functions.size <= 0) {
return
}
for (const [, fn] of functions) {
fn(event)
}
},
}
}
const addEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.addEventListener('change', handler);
return;
}
// Fallback for legacy browser
mql.addListener(handler);
};
if (typeof mql.addEventListener === 'function') {
mql.addEventListener('change', handler)
return
}
// Fallback for legacy browser
mql.addListener(handler)
}
const removeEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.removeEventListener('change', handler);
}
// Fallback for legacy browser
mql.removeListener(handler);
};
if (typeof mql.addEventListener === 'function') {
mql.removeEventListener('change', handler)
}
// Fallback for legacy browser
mql.removeListener(handler)
}
const addMqFunction = (mqf, id, fn) => {
if (!id) {
throw new Error('required function id');
}
if (mqf.functions.has(id)) {
throw new Error(`${id} has already been added`);
}
mqf.functions.set(id, fn);
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf));
addEventListener(mqf.mql, mqf._handleChange.bind(mqf));
};
if (!id) {
throw new Error('required function id')
}
if (mqf.functions.has(id)) {
throw new Error(`${id} has already been added`)
}
mqf.functions.set(id, fn)
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf))
addEventListener(mqf.mql, mqf._handleChange.bind(mqf))
}
const removeMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id');
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`);
}
mqf.functions.delete(id);
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf));
addEventListener(mqf.mql, mqf._handleChange.bind(mqf));
};
if (!id) {
throw new Error('required function id')
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`)
}
mqf.functions.delete(id)
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf))
addEventListener(mqf.mql, mqf._handleChange.bind(mqf))
}
const runMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id');
if (!id) {
throw new Error('required function id')
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`)
}
const fn = mqf.functions.get(id)
const _handleChange = (_mql) => {
if (typeof fn === 'function') {
fn(_mql)
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`);
}
const fn = mqf.functions.get(id);
const _handleChange = (_mql) => {
if (typeof fn === 'function') {
fn(_mql);
}
};
_handleChange(mqf.mql);
};
}
_handleChange(mqf.mql)
}
var index = {
createMqFunctions,
addMqFunction,
removeMqFunction,
runMqFunction,
};
createMqFunctions,
addMqFunction,
removeMqFunction,
runMqFunction,
}
module.exports = index;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVNcUZ1bmN0aW9ucy50cyIsIi4uL3NyYy91dGlscy9ldmVudExpc3RlbmVyLnRzIiwiLi4vc3JjL2FkZE1xRnVuY3Rpb24udHMiLCIuLi9zcmMvcmVtb3ZlTXFGdW5jdGlvbi50cyIsIi4uL3NyYy9ydW5NcUZ1bmN0aW9uLnRzIiwiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiwgSGFuZGxlckV2ZW50IH0gZnJvbSAnLi9pbmRleC5kJ1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTXFGdW5jdGlvbnMgPSAocXVlcnk6IHN0cmluZyk6IE1xRnVuY3Rpb25zID0+IHtcbiAgaWYgKCFxdWVyeSkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgcXVlcnknKVxuICB9XG5cbiAgY29uc3QgZnVuY3Rpb25zID0gbmV3IE1hcDxzdHJpbmcsIEhhbmRsZXJGdW5jdGlvbj4oKVxuXG4gIHJldHVybiB7XG4gICAgZnVuY3Rpb25zLFxuICAgIG1xbDogd2luZG93Lm1hdGNoTWVkaWEocXVlcnkpLFxuICAgIF9oYW5kbGVDaGFuZ2U6IChldmVudDogSGFuZGxlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgICBpZiAoZnVuY3Rpb25zLnNpemUgPD0gMCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgZm9yIChjb25zdCBbLCBmbl0gb2YgZnVuY3Rpb25zKSB7XG4gICAgICAgIGZuKGV2ZW50KVxuICAgICAgfVxuICAgIH0sXG4gIH1cbn1cbiIsImV4cG9ydCBjb25zdCBhZGRFdmVudExpc3RlbmVyID0gKFxuICBtcWw6IE1lZGlhUXVlcnlMaXN0LFxuICBoYW5kbGVyOiAoZXZlbnQ6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHZvaWQsXG4pID0+IHtcbiAgaWYgKHR5cGVvZiBtcWwuYWRkRXZlbnRMaXN0ZW5lciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIG1xbC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBoYW5kbGVyKVxuICAgIHJldHVyblxuICB9XG4gIC8vIEZhbGxiYWNrIGZvciBsZWdhY3kgYnJvd3NlclxuICBtcWwuYWRkTGlzdGVuZXIoaGFuZGxlcilcbn1cblxuZXhwb3J0IGNvbnN0IHJlbW92ZUV2ZW50TGlzdGVuZXIgPSAoXG4gIG1xbDogTWVkaWFRdWVyeUxpc3QsXG4gIGhhbmRsZXI6IChldmVudDogTWVkaWFRdWVyeUxpc3RFdmVudCkgPT4gdm9pZCxcbikgPT4ge1xuICBpZiAodHlwZW9mIG1xbC5hZGRFdmVudExpc3RlbmVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgbXFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGhhbmRsZXIpXG4gIH1cbiAgLy8gRmFsbGJhY2sgZm9yIGxlZ2FjeSBicm93c2VyXG4gIG1xbC5yZW1vdmVMaXN0ZW5lcihoYW5kbGVyKVxufVxuIiwiaW1wb3J0IHR5cGUgeyBNcUZ1bmN0aW9ucywgSGFuZGxlckZ1bmN0aW9uIH0gZnJvbSAnLi9pbmRleC5kJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IGFkZE1xRnVuY3Rpb24gPSAoXG4gIG1xZjogTXFGdW5jdGlvbnMsXG4gIGlkOiBzdHJpbmcsXG4gIGZuOiBIYW5kbGVyRnVuY3Rpb24sXG4pOiB2b2lkID0+IHtcbiAgaWYgKCFpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgZnVuY3Rpb24gaWQnKVxuICB9XG4gIGlmIChtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGhhcyBhbHJlYWR5IGJlZW4gYWRkZWRgKVxuICB9XG5cbiAgbXFmLmZ1bmN0aW9ucy5zZXQoaWQsIGZuKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zIH0gZnJvbSAnLi9pbmRleC5kJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IHJlbW92ZU1xRnVuY3Rpb24gPSAobXFmOiBNcUZ1bmN0aW9ucywgaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKCFtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGRvZXMgbm90IGV4aXN0YClcbiAgfVxuXG4gIG1xZi5mdW5jdGlvbnMuZGVsZXRlKGlkKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zLCBIYW5kbGVyRXZlbnQgfSBmcm9tICcuL2luZGV4LmQnXG5cbmV4cG9ydCBjb25zdCBydW5NcUZ1bmN0aW9uID0gKG1xZjogTXFGdW5jdGlvbnMsIGlkOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgaWYgKCFpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgZnVuY3Rpb24gaWQnKVxuICB9XG4gIGlmICghbXFmLmZ1bmN0aW9ucy5oYXMoaWQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGAke2lkfSBkb2VzIG5vdCBleGlzdGApXG4gIH1cblxuICBjb25zdCBmbiA9IG1xZi5mdW5jdGlvbnMuZ2V0KGlkKVxuICBjb25zdCBfaGFuZGxlQ2hhbmdlID0gKF9tcWw6IEhhbmRsZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGZuKF9tcWwpXG4gICAgfVxuICB9XG5cbiAgX2hhbmRsZUNoYW5nZShtcWYubXFsKVxufVxuIiwiaW1wb3J0IHsgY3JlYXRlTXFGdW5jdGlvbnMgfSBmcm9tICcuL2NyZWF0ZU1xRnVuY3Rpb25zJ1xuaW1wb3J0IHsgYWRkTXFGdW5jdGlvbiB9IGZyb20gJy4vYWRkTXFGdW5jdGlvbidcbmltcG9ydCB7IHJlbW92ZU1xRnVuY3Rpb24gfSBmcm9tICcuL3JlbW92ZU1xRnVuY3Rpb24nXG5pbXBvcnQgeyBydW5NcUZ1bmN0aW9uIH0gZnJvbSAnLi9ydW5NcUZ1bmN0aW9uJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNyZWF0ZU1xRnVuY3Rpb25zLFxuICBhZGRNcUZ1bmN0aW9uLFxuICByZW1vdmVNcUZ1bmN0aW9uLFxuICBydW5NcUZ1bmN0aW9uLFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFTyxNQUFNLGlCQUFpQixHQUFHLENBQUMsS0FBYSxLQUFpQjtJQUM5RCxJQUFJLENBQUMsS0FBSyxFQUFFO0FBQ1YsUUFBQSxNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUE7QUFDbEMsS0FBQTtBQUVELElBQUEsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQTJCLENBQUE7SUFFcEQsT0FBTztRQUNMLFNBQVM7QUFDVCxRQUFBLEdBQUcsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztBQUM3QixRQUFBLGFBQWEsRUFBRSxDQUFDLEtBQW1CLEtBQVU7QUFDM0MsWUFBQSxJQUFJLFNBQVMsQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFFO2dCQUN2QixPQUFNO0FBQ1AsYUFBQTtBQUVELFlBQUEsS0FBSyxNQUFN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
module.exports = index
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVNcUZ1bmN0aW9ucy50cyIsIi4uL3NyYy91dGlscy9ldmVudExpc3RlbmVyLnRzIiwiLi4vc3JjL2FkZE1xRnVuY3Rpb24udHMiLCIuLi9zcmMvcmVtb3ZlTXFGdW5jdGlvbi50cyIsIi4uL3NyYy9ydW5NcUZ1bmN0aW9uLnRzIiwiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiwgSGFuZGxlckV2ZW50IH0gZnJvbSAnLi9NcUZ1bmN0aW9ucydcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZU1xRnVuY3Rpb25zID0gKHF1ZXJ5OiBzdHJpbmcpOiBNcUZ1bmN0aW9ucyA9PiB7XG4gIGlmICghcXVlcnkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlcXVpcmVkIHF1ZXJ5JylcbiAgfVxuXG4gIGNvbnN0IGZ1bmN0aW9ucyA9IG5ldyBNYXA8c3RyaW5nLCBIYW5kbGVyRnVuY3Rpb24+KClcblxuICByZXR1cm4ge1xuICAgIGZ1bmN0aW9ucyxcbiAgICBtcWw6IHdpbmRvdy5tYXRjaE1lZGlhKHF1ZXJ5KSxcbiAgICBfaGFuZGxlQ2hhbmdlOiAoZXZlbnQ6IEhhbmRsZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKGZ1bmN0aW9ucy5zaXplIDw9IDApIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgWywgZm5dIG9mIGZ1bmN0aW9ucykge1xuICAgICAgICBmbihldmVudClcbiAgICAgIH1cbiAgICB9LFxuICB9XG59XG4iLCJleHBvcnQgY29uc3QgYWRkRXZlbnRMaXN0ZW5lciA9IChcbiAgbXFsOiBNZWRpYVF1ZXJ5TGlzdCxcbiAgaGFuZGxlcjogKGV2ZW50OiBNZWRpYVF1ZXJ5TGlzdEV2ZW50KSA9PiB2b2lkLFxuKSA9PiB7XG4gIGlmICh0eXBlb2YgbXFsLmFkZEV2ZW50TGlzdGVuZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICBtcWwuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgaGFuZGxlcilcbiAgICByZXR1cm5cbiAgfVxuICAvLyBGYWxsYmFjayBmb3IgbGVnYWN5IGJyb3dzZXJcbiAgbXFsLmFkZExpc3RlbmVyKGhhbmRsZXIpXG59XG5cbmV4cG9ydCBjb25zdCByZW1vdmVFdmVudExpc3RlbmVyID0gKFxuICBtcWw6IE1lZGlhUXVlcnlMaXN0LFxuICBoYW5kbGVyOiAoZXZlbnQ6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHZvaWQsXG4pID0+IHtcbiAgaWYgKHR5cGVvZiBtcWwuYWRkRXZlbnRMaXN0ZW5lciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIG1xbC5yZW1vdmVFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBoYW5kbGVyKVxuICB9XG4gIC8vIEZhbGxiYWNrIGZvciBsZWdhY3kgYnJvd3NlclxuICBtcWwucmVtb3ZlTGlzdGVuZXIoaGFuZGxlcilcbn1cbiIsImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiB9IGZyb20gJy4vTXFGdW5jdGlvbnMnXG5pbXBvcnQgeyBhZGRFdmVudExpc3RlbmVyLCByZW1vdmVFdmVudExpc3RlbmVyIH0gZnJvbSAnLi91dGlscy9ldmVudExpc3RlbmVyJ1xuXG5leHBvcnQgY29uc3QgYWRkTXFGdW5jdGlvbiA9IChcbiAgbXFmOiBNcUZ1bmN0aW9ucyxcbiAgaWQ6IHN0cmluZyxcbiAgZm46IEhhbmRsZXJGdW5jdGlvbixcbik6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKG1xZi5mdW5jdGlvbnMuaGFzKGlkKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHtpZH0gaGFzIGFscmVhZHkgYmVlbiBhZGRlZGApXG4gIH1cblxuICBtcWYuZnVuY3Rpb25zLnNldChpZCwgZm4pXG4gIHJlbW92ZUV2ZW50TGlzdGVuZXIobXFmLm1xbCwgbXFmLl9oYW5kbGVDaGFuZ2UuYmluZChtcWYpKVxuICBhZGRFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbn1cbiIsImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMgfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IHJlbW92ZU1xRnVuY3Rpb24gPSAobXFmOiBNcUZ1bmN0aW9ucywgaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKCFtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGRvZXMgbm90IGV4aXN0YClcbiAgfVxuXG4gIG1xZi5mdW5jdGlvbnMuZGVsZXRlKGlkKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zLCBIYW5kbGVyRXZlbnQgfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuXG5leHBvcnQgY29uc3QgcnVuTXFGdW5jdGlvbiA9IChtcWY6IE1xRnVuY3Rpb25zLCBpZDogc3RyaW5nKTogdm9pZCA9PiB7XG4gIGlmICghaWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlcXVpcmVkIGZ1bmN0aW9uIGlkJylcbiAgfVxuICBpZiAoIW1xZi5mdW5jdGlvbnMuaGFzKGlkKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHtpZH0gZG9lcyBub3QgZXhpc3RgKVxuICB9XG5cbiAgY29uc3QgZm4gPSBtcWYuZnVuY3Rpb25zLmdldChpZClcbiAgY29uc3QgX2hhbmRsZUNoYW5nZSA9IChfbXFsOiBIYW5kbGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBmbihfbXFsKVxuICAgIH1cbiAgfVxuXG4gIF9oYW5kbGVDaGFuZ2UobXFmLm1xbClcbn1cbiIsImltcG9ydCB7IGNyZWF0ZU1xRnVuY3Rpb25zIH0gZnJvbSAnLi9jcmVhdGVNcUZ1bmN0aW9ucydcbmltcG9ydCB7IGFkZE1xRnVuY3Rpb24gfSBmcm9tICcuL2FkZE1xRnVuY3Rpb24nXG5pbXBvcnQgeyByZW1vdmVNcUZ1bmN0aW9uIH0gZnJvbSAnLi9yZW1vdmVNcUZ1bmN0aW9uJ1xuaW1wb3J0IHsgcnVuTXFGdW5jdGlvbiB9IGZyb20gJy4vcnVuTXFGdW5jdGlvbidcblxuZXhwb3J0IHR5cGUgeyBNcUZ1bmN0aW9ucywgSGFuZGxlckV2ZW50LCBIYW5kbGVyRnVuY3Rpb24gfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNyZWF0ZU1xRnVuY3Rpb25zLFxuICBhZGRNcUZ1bmN0aW9uLFxuICByZW1vdmVNcUZ1bmN0aW9uLFxuICBydW5NcUZ1bmN0aW9uLFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFTyxNQUFNLGlCQUFpQixHQUFHLENBQUMsS0FBYSxLQUFpQjtJQUM5RCxJQUFJLENBQUMsS0FBSyxFQUFFO0FBQ1YsUUFBQSxNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUE7QUFDbEMsS0FBQTtBQUVELElBQUEsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQTJCLENBQUE7SUFFcEQsT0FBTztRQUNMLFNBQVM7QUFDVCxRQUFBLEdBQUcsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztBQUM3QixRQUFBLGFBQWEsRUFBRSxDQUFD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
/*!
Mqfunctions.js v0.1.0
Mqfunctions.js v0.1.0-alpha.2
https://github.com/kimulaco/mqfunctions

@@ -7,89 +7,88 @@ Released under the MIT License.

var Mqfunctions = (function () {
'use strict';
'use strict'
const createMqFunctions = (query) => {
if (!query) {
throw new Error('required query');
const createMqFunctions = (query) => {
if (!query) {
throw new Error('required query')
}
const functions = new Map()
return {
functions,
mql: window.matchMedia(query),
_handleChange: (event) => {
if (functions.size <= 0) {
return
}
const functions = new Map();
return {
functions,
mql: window.matchMedia(query),
_handleChange: (event) => {
if (functions.size <= 0) {
return;
}
for (const [, fn] of functions) {
fn(event);
}
},
};
};
const addEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.addEventListener('change', handler);
return;
for (const [, fn] of functions) {
fn(event)
}
// Fallback for legacy browser
mql.addListener(handler);
};
const removeEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.removeEventListener('change', handler);
}
// Fallback for legacy browser
mql.removeListener(handler);
};
},
}
}
const addMqFunction = (mqf, id, fn) => {
if (!id) {
throw new Error('required function id');
}
if (mqf.functions.has(id)) {
throw new Error(`${id} has already been added`);
}
mqf.functions.set(id, fn);
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf));
addEventListener(mqf.mql, mqf._handleChange.bind(mqf));
};
const addEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.addEventListener('change', handler)
return
}
// Fallback for legacy browser
mql.addListener(handler)
}
const removeEventListener = (mql, handler) => {
if (typeof mql.addEventListener === 'function') {
mql.removeEventListener('change', handler)
}
// Fallback for legacy browser
mql.removeListener(handler)
}
const removeMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id');
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`);
}
mqf.functions.delete(id);
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf));
addEventListener(mqf.mql, mqf._handleChange.bind(mqf));
};
const addMqFunction = (mqf, id, fn) => {
if (!id) {
throw new Error('required function id')
}
if (mqf.functions.has(id)) {
throw new Error(`${id} has already been added`)
}
mqf.functions.set(id, fn)
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf))
addEventListener(mqf.mql, mqf._handleChange.bind(mqf))
}
const runMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id');
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`);
}
const fn = mqf.functions.get(id);
const _handleChange = (_mql) => {
if (typeof fn === 'function') {
fn(_mql);
}
};
_handleChange(mqf.mql);
};
const removeMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id')
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`)
}
mqf.functions.delete(id)
removeEventListener(mqf.mql, mqf._handleChange.bind(mqf))
addEventListener(mqf.mql, mqf._handleChange.bind(mqf))
}
var index = {
createMqFunctions,
addMqFunction,
removeMqFunction,
runMqFunction,
};
const runMqFunction = (mqf, id) => {
if (!id) {
throw new Error('required function id')
}
if (!mqf.functions.has(id)) {
throw new Error(`${id} does not exist`)
}
const fn = mqf.functions.get(id)
const _handleChange = (_mql) => {
if (typeof fn === 'function') {
fn(_mql)
}
}
_handleChange(mqf.mql)
}
return index;
var index = {
createMqFunctions,
addMqFunction,
removeMqFunction,
runMqFunction,
}
})();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXFmdW5jdGlvbnMuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVNcUZ1bmN0aW9ucy50cyIsIi4uL3NyYy91dGlscy9ldmVudExpc3RlbmVyLnRzIiwiLi4vc3JjL2FkZE1xRnVuY3Rpb24udHMiLCIuLi9zcmMvcmVtb3ZlTXFGdW5jdGlvbi50cyIsIi4uL3NyYy9ydW5NcUZ1bmN0aW9uLnRzIiwiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiwgSGFuZGxlckV2ZW50IH0gZnJvbSAnLi9pbmRleC5kJ1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTXFGdW5jdGlvbnMgPSAocXVlcnk6IHN0cmluZyk6IE1xRnVuY3Rpb25zID0+IHtcbiAgaWYgKCFxdWVyeSkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgcXVlcnknKVxuICB9XG5cbiAgY29uc3QgZnVuY3Rpb25zID0gbmV3IE1hcDxzdHJpbmcsIEhhbmRsZXJGdW5jdGlvbj4oKVxuXG4gIHJldHVybiB7XG4gICAgZnVuY3Rpb25zLFxuICAgIG1xbDogd2luZG93Lm1hdGNoTWVkaWEocXVlcnkpLFxuICAgIF9oYW5kbGVDaGFuZ2U6IChldmVudDogSGFuZGxlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgICBpZiAoZnVuY3Rpb25zLnNpemUgPD0gMCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgZm9yIChjb25zdCBbLCBmbl0gb2YgZnVuY3Rpb25zKSB7XG4gICAgICAgIGZuKGV2ZW50KVxuICAgICAgfVxuICAgIH0sXG4gIH1cbn1cbiIsImV4cG9ydCBjb25zdCBhZGRFdmVudExpc3RlbmVyID0gKFxuICBtcWw6IE1lZGlhUXVlcnlMaXN0LFxuICBoYW5kbGVyOiAoZXZlbnQ6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHZvaWQsXG4pID0+IHtcbiAgaWYgKHR5cGVvZiBtcWwuYWRkRXZlbnRMaXN0ZW5lciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIG1xbC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBoYW5kbGVyKVxuICAgIHJldHVyblxuICB9XG4gIC8vIEZhbGxiYWNrIGZvciBsZWdhY3kgYnJvd3NlclxuICBtcWwuYWRkTGlzdGVuZXIoaGFuZGxlcilcbn1cblxuZXhwb3J0IGNvbnN0IHJlbW92ZUV2ZW50TGlzdGVuZXIgPSAoXG4gIG1xbDogTWVkaWFRdWVyeUxpc3QsXG4gIGhhbmRsZXI6IChldmVudDogTWVkaWFRdWVyeUxpc3RFdmVudCkgPT4gdm9pZCxcbikgPT4ge1xuICBpZiAodHlwZW9mIG1xbC5hZGRFdmVudExpc3RlbmVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgbXFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGhhbmRsZXIpXG4gIH1cbiAgLy8gRmFsbGJhY2sgZm9yIGxlZ2FjeSBicm93c2VyXG4gIG1xbC5yZW1vdmVMaXN0ZW5lcihoYW5kbGVyKVxufVxuIiwiaW1wb3J0IHR5cGUgeyBNcUZ1bmN0aW9ucywgSGFuZGxlckZ1bmN0aW9uIH0gZnJvbSAnLi9pbmRleC5kJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IGFkZE1xRnVuY3Rpb24gPSAoXG4gIG1xZjogTXFGdW5jdGlvbnMsXG4gIGlkOiBzdHJpbmcsXG4gIGZuOiBIYW5kbGVyRnVuY3Rpb24sXG4pOiB2b2lkID0+IHtcbiAgaWYgKCFpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgZnVuY3Rpb24gaWQnKVxuICB9XG4gIGlmIChtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGhhcyBhbHJlYWR5IGJlZW4gYWRkZWRgKVxuICB9XG5cbiAgbXFmLmZ1bmN0aW9ucy5zZXQoaWQsIGZuKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zIH0gZnJvbSAnLi9pbmRleC5kJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IHJlbW92ZU1xRnVuY3Rpb24gPSAobXFmOiBNcUZ1bmN0aW9ucywgaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKCFtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGRvZXMgbm90IGV4aXN0YClcbiAgfVxuXG4gIG1xZi5mdW5jdGlvbnMuZGVsZXRlKGlkKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zLCBIYW5kbGVyRXZlbnQgfSBmcm9tICcuL2luZGV4LmQnXG5cbmV4cG9ydCBjb25zdCBydW5NcUZ1bmN0aW9uID0gKG1xZjogTXFGdW5jdGlvbnMsIGlkOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgaWYgKCFpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcigncmVxdWlyZWQgZnVuY3Rpb24gaWQnKVxuICB9XG4gIGlmICghbXFmLmZ1bmN0aW9ucy5oYXMoaWQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGAke2lkfSBkb2VzIG5vdCBleGlzdGApXG4gIH1cblxuICBjb25zdCBmbiA9IG1xZi5mdW5jdGlvbnMuZ2V0KGlkKVxuICBjb25zdCBfaGFuZGxlQ2hhbmdlID0gKF9tcWw6IEhhbmRsZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGZuKF9tcWwpXG4gICAgfVxuICB9XG5cbiAgX2hhbmRsZUNoYW5nZShtcWYubXFsKVxufVxuIiwiaW1wb3J0IHsgY3JlYXRlTXFGdW5jdGlvbnMgfSBmcm9tICcuL2NyZWF0ZU1xRnVuY3Rpb25zJ1xuaW1wb3J0IHsgYWRkTXFGdW5jdGlvbiB9IGZyb20gJy4vYWRkTXFGdW5jdGlvbidcbmltcG9ydCB7IHJlbW92ZU1xRnVuY3Rpb24gfSBmcm9tICcuL3JlbW92ZU1xRnVuY3Rpb24nXG5pbXBvcnQgeyBydW5NcUZ1bmN0aW9uIH0gZnJvbSAnLi9ydW5NcUZ1bmN0aW9uJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNyZWF0ZU1xRnVuY3Rpb25zLFxuICBhZGRNcUZ1bmN0aW9uLFxuICByZW1vdmVNcUZ1bmN0aW9uLFxuICBydW5NcUZ1bmN0aW9uLFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBRU8sTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQWEsS0FBaUI7UUFDOUQsSUFBSSxDQUFDLEtBQUssRUFBRTtJQUNWLFFBQUEsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0lBQ2xDLEtBQUE7SUFFRCxJQUFBLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxFQUEyQixDQUFBO1FBRXBELE9BQU87WUFDTCxTQUFTO0lBQ1QsUUFBQSxHQUFHLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDN0IsUUFBQSxhQUFhLEVBQUUsQ0FBQyxLQUFtQixLQUFVO0lBQzNDLFlBQUEsSUFBSSxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRTtvQkFDdkIsT0FBTTtJQUNQLGFBQUE7SUFFRCxZQUFBLEtB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
return index
})()
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXFmdW5jdGlvbnMuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVNcUZ1bmN0aW9ucy50cyIsIi4uL3NyYy91dGlscy9ldmVudExpc3RlbmVyLnRzIiwiLi4vc3JjL2FkZE1xRnVuY3Rpb24udHMiLCIuLi9zcmMvcmVtb3ZlTXFGdW5jdGlvbi50cyIsIi4uL3NyYy9ydW5NcUZ1bmN0aW9uLnRzIiwiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiwgSGFuZGxlckV2ZW50IH0gZnJvbSAnLi9NcUZ1bmN0aW9ucydcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZU1xRnVuY3Rpb25zID0gKHF1ZXJ5OiBzdHJpbmcpOiBNcUZ1bmN0aW9ucyA9PiB7XG4gIGlmICghcXVlcnkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlcXVpcmVkIHF1ZXJ5JylcbiAgfVxuXG4gIGNvbnN0IGZ1bmN0aW9ucyA9IG5ldyBNYXA8c3RyaW5nLCBIYW5kbGVyRnVuY3Rpb24+KClcblxuICByZXR1cm4ge1xuICAgIGZ1bmN0aW9ucyxcbiAgICBtcWw6IHdpbmRvdy5tYXRjaE1lZGlhKHF1ZXJ5KSxcbiAgICBfaGFuZGxlQ2hhbmdlOiAoZXZlbnQ6IEhhbmRsZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKGZ1bmN0aW9ucy5zaXplIDw9IDApIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgWywgZm5dIG9mIGZ1bmN0aW9ucykge1xuICAgICAgICBmbihldmVudClcbiAgICAgIH1cbiAgICB9LFxuICB9XG59XG4iLCJleHBvcnQgY29uc3QgYWRkRXZlbnRMaXN0ZW5lciA9IChcbiAgbXFsOiBNZWRpYVF1ZXJ5TGlzdCxcbiAgaGFuZGxlcjogKGV2ZW50OiBNZWRpYVF1ZXJ5TGlzdEV2ZW50KSA9PiB2b2lkLFxuKSA9PiB7XG4gIGlmICh0eXBlb2YgbXFsLmFkZEV2ZW50TGlzdGVuZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICBtcWwuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgaGFuZGxlcilcbiAgICByZXR1cm5cbiAgfVxuICAvLyBGYWxsYmFjayBmb3IgbGVnYWN5IGJyb3dzZXJcbiAgbXFsLmFkZExpc3RlbmVyKGhhbmRsZXIpXG59XG5cbmV4cG9ydCBjb25zdCByZW1vdmVFdmVudExpc3RlbmVyID0gKFxuICBtcWw6IE1lZGlhUXVlcnlMaXN0LFxuICBoYW5kbGVyOiAoZXZlbnQ6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHZvaWQsXG4pID0+IHtcbiAgaWYgKHR5cGVvZiBtcWwuYWRkRXZlbnRMaXN0ZW5lciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIG1xbC5yZW1vdmVFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBoYW5kbGVyKVxuICB9XG4gIC8vIEZhbGxiYWNrIGZvciBsZWdhY3kgYnJvd3NlclxuICBtcWwucmVtb3ZlTGlzdGVuZXIoaGFuZGxlcilcbn1cbiIsImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMsIEhhbmRsZXJGdW5jdGlvbiB9IGZyb20gJy4vTXFGdW5jdGlvbnMnXG5pbXBvcnQgeyBhZGRFdmVudExpc3RlbmVyLCByZW1vdmVFdmVudExpc3RlbmVyIH0gZnJvbSAnLi91dGlscy9ldmVudExpc3RlbmVyJ1xuXG5leHBvcnQgY29uc3QgYWRkTXFGdW5jdGlvbiA9IChcbiAgbXFmOiBNcUZ1bmN0aW9ucyxcbiAgaWQ6IHN0cmluZyxcbiAgZm46IEhhbmRsZXJGdW5jdGlvbixcbik6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKG1xZi5mdW5jdGlvbnMuaGFzKGlkKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHtpZH0gaGFzIGFscmVhZHkgYmVlbiBhZGRlZGApXG4gIH1cblxuICBtcWYuZnVuY3Rpb25zLnNldChpZCwgZm4pXG4gIHJlbW92ZUV2ZW50TGlzdGVuZXIobXFmLm1xbCwgbXFmLl9oYW5kbGVDaGFuZ2UuYmluZChtcWYpKVxuICBhZGRFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbn1cbiIsImltcG9ydCB0eXBlIHsgTXFGdW5jdGlvbnMgfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuaW1wb3J0IHsgYWRkRXZlbnRMaXN0ZW5lciwgcmVtb3ZlRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4vdXRpbHMvZXZlbnRMaXN0ZW5lcidcblxuZXhwb3J0IGNvbnN0IHJlbW92ZU1xRnVuY3Rpb24gPSAobXFmOiBNcUZ1bmN0aW9ucywgaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICBpZiAoIWlkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1aXJlZCBmdW5jdGlvbiBpZCcpXG4gIH1cbiAgaWYgKCFtcWYuZnVuY3Rpb25zLmhhcyhpZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7aWR9IGRvZXMgbm90IGV4aXN0YClcbiAgfVxuXG4gIG1xZi5mdW5jdGlvbnMuZGVsZXRlKGlkKVxuICByZW1vdmVFdmVudExpc3RlbmVyKG1xZi5tcWwsIG1xZi5faGFuZGxlQ2hhbmdlLmJpbmQobXFmKSlcbiAgYWRkRXZlbnRMaXN0ZW5lcihtcWYubXFsLCBtcWYuX2hhbmRsZUNoYW5nZS5iaW5kKG1xZikpXG59XG4iLCJpbXBvcnQgdHlwZSB7IE1xRnVuY3Rpb25zLCBIYW5kbGVyRXZlbnQgfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuXG5leHBvcnQgY29uc3QgcnVuTXFGdW5jdGlvbiA9IChtcWY6IE1xRnVuY3Rpb25zLCBpZDogc3RyaW5nKTogdm9pZCA9PiB7XG4gIGlmICghaWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlcXVpcmVkIGZ1bmN0aW9uIGlkJylcbiAgfVxuICBpZiAoIW1xZi5mdW5jdGlvbnMuaGFzKGlkKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHtpZH0gZG9lcyBub3QgZXhpc3RgKVxuICB9XG5cbiAgY29uc3QgZm4gPSBtcWYuZnVuY3Rpb25zLmdldChpZClcbiAgY29uc3QgX2hhbmRsZUNoYW5nZSA9IChfbXFsOiBIYW5kbGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBmbihfbXFsKVxuICAgIH1cbiAgfVxuXG4gIF9oYW5kbGVDaGFuZ2UobXFmLm1xbClcbn1cbiIsImltcG9ydCB7IGNyZWF0ZU1xRnVuY3Rpb25zIH0gZnJvbSAnLi9jcmVhdGVNcUZ1bmN0aW9ucydcbmltcG9ydCB7IGFkZE1xRnVuY3Rpb24gfSBmcm9tICcuL2FkZE1xRnVuY3Rpb24nXG5pbXBvcnQgeyByZW1vdmVNcUZ1bmN0aW9uIH0gZnJvbSAnLi9yZW1vdmVNcUZ1bmN0aW9uJ1xuaW1wb3J0IHsgcnVuTXFGdW5jdGlvbiB9IGZyb20gJy4vcnVuTXFGdW5jdGlvbidcblxuZXhwb3J0IHR5cGUgeyBNcUZ1bmN0aW9ucywgSGFuZGxlckV2ZW50LCBIYW5kbGVyRnVuY3Rpb24gfSBmcm9tICcuL01xRnVuY3Rpb25zJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNyZWF0ZU1xRnVuY3Rpb25zLFxuICBhZGRNcUZ1bmN0aW9uLFxuICByZW1vdmVNcUZ1bmN0aW9uLFxuICBydW5NcUZ1bmN0aW9uLFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBRU8sTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQWEsS0FBaUI7UUFDOUQsSUFBSSxDQUFDLEtBQUssRUFBRTtJQUNWLFFBQUEsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0lBQ2xDLEtBQUE7SUFFRCxJQUFBLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxFQUEyQixDQUFBO1FBRXBELE9BQU87WUFDTCxTQUFTO0lBQ1QsUUFBQSxHQUFHLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDN0IsUUFBQSxhQUFhLEVB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
/*!
Mqfunctions.js v0.1.0
Mqfunctions.js v0.1.0-alpha.2
https://github.com/kimulaco/mqfunctions
Released under the MIT License.
*/
var Mqfunctions=function(){"use strict";const n=(n,e)=>{"function"!=typeof n.addEventListener?n.addListener(e):n.addEventListener("change",e)},e=(n,e)=>{"function"==typeof n.addEventListener&&n.removeEventListener("change",e),n.removeListener(e)};return{createMqFunctions:n=>{if(!n)throw new Error("required query");const e=new Map;return{functions:e,mql:window.matchMedia(n),_handleChange:n=>{if(!(e.size<=0))for(const[,r]of e)r(n)}}},addMqFunction:(r,t,i)=>{if(!t)throw new Error("required function id");if(r.functions.has(t))throw new Error(`${t} has already been added`);r.functions.set(t,i),e(r.mql,r._handleChange.bind(r)),n(r.mql,r._handleChange.bind(r))},removeMqFunction:(r,t)=>{if(!t)throw new Error("required function id");if(!r.functions.has(t))throw new Error(`${t} does not exist`);r.functions.delete(t),e(r.mql,r._handleChange.bind(r)),n(r.mql,r._handleChange.bind(r))},runMqFunction:(n,e)=>{if(!e)throw new Error("required function id");if(!n.functions.has(e))throw new Error(`${e} does not exist`);const r=n.functions.get(e);var t;t=n.mql,"function"==typeof r&&r(t)}}}();
var Mqfunctions = (function () {
'use strict'
const n = (n, e) => {
'function' != typeof n.addEventListener
? n.addListener(e)
: n.addEventListener('change', e)
},
e = (n, e) => {
'function' == typeof n.addEventListener &&
n.removeEventListener('change', e),
n.removeListener(e)
}
return {
createMqFunctions: (n) => {
if (!n) throw new Error('required query')
const e = new Map()
return {
functions: e,
mql: window.matchMedia(n),
_handleChange: (n) => {
if (!(e.size <= 0)) for (const [, r] of e) r(n)
},
}
},
addMqFunction: (r, t, i) => {
if (!t) throw new Error('required function id')
if (r.functions.has(t)) throw new Error(`${t} has already been added`)
r.functions.set(t, i),
e(r.mql, r._handleChange.bind(r)),
n(r.mql, r._handleChange.bind(r))
},
removeMqFunction: (r, t) => {
if (!t) throw new Error('required function id')
if (!r.functions.has(t)) throw new Error(`${t} does not exist`)
r.functions.delete(t),
e(r.mql, r._handleChange.bind(r)),
n(r.mql, r._handleChange.bind(r))
},
runMqFunction: (n, e) => {
if (!e) throw new Error('required function id')
if (!n.functions.has(e)) throw new Error(`${e} does not exist`)
const r = n.functions.get(e)
var t
;(t = n.mql), 'function' == typeof r && r(t)
},
}
})()

@@ -1,2 +0,2 @@

import type { MqFunctions } from './index.d';
export declare const removeMqFunction: (mqf: MqFunctions, id: string) => void;
import type { MqFunctions } from './MqFunctions'
export declare const removeMqFunction: (mqf: MqFunctions, id: string) => void

@@ -1,2 +0,2 @@

import type { MqFunctions } from './index.d';
export declare const runMqFunction: (mqf: MqFunctions, id: string) => void;
import type { MqFunctions } from './MqFunctions'
export declare const runMqFunction: (mqf: MqFunctions, id: string) => void

@@ -1,2 +0,8 @@

export declare const addEventListener: (mql: MediaQueryList, handler: (event: MediaQueryListEvent) => void) => void;
export declare const removeEventListener: (mql: MediaQueryList, handler: (event: MediaQueryListEvent) => void) => void;
export declare const addEventListener: (
mql: MediaQueryList,
handler: (event: MediaQueryListEvent) => void,
) => void
export declare const removeEventListener: (
mql: MediaQueryList,
handler: (event: MediaQueryListEvent) => void,
) => void
{
"name": "mqfunctions",
"version": "0.1.0-alpha.1",
"version": "0.1.0-alpha.2",
"description": "JavaScript library to manage matchMedia handlers.",

@@ -21,3 +21,3 @@ "keywords": [

"main": "dist/index.js",
"types": "types/index.d.ts",
"types": "dist/index.d.ts",
"module": "dist/index.es.js",

@@ -40,2 +40,3 @@ "browser": "dist/mqfunctions.js",

"test:e2e": "jest -c jest.e2e.config.js --verbose",
"pretest:e2e": "node scripts/setupE2E.js",
"test:serve": "serve test/fixtures -p 3000"

@@ -42,0 +43,0 @@ },

@@ -5,2 +5,3 @@ # mqfunctions

[![License MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
[![npm version](https://badge.fury.io/js/mqfunctions.svg)](https://badge.fury.io/js/mqfunctions)

@@ -7,0 +8,0 @@ JavaScript library to manage matchMedia handlers.

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