Socket
Socket
Sign inDemoInstall

@alfalab/core-components-mq

Package Overview
Dependencies
Maintainers
18
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@alfalab/core-components-mq - npm Package Compare versions

Comparing version 4.0.1 to 4.1.0

2

Component.js

@@ -6,2 +6,3 @@ 'use strict';

var React = require('react');
require('@alfalab/hooks');
var utils = require('./utils.js');

@@ -26,2 +27,3 @@ var useMatchMedia = require('./useMatchMedia.js');

}, [matches, onMatchChange]);
// eslint-disable-next-line react/jsx-no-useless-fragment
return React__default['default'].createElement(React.Fragment, null, matches && IS_BROWSER ? children : null);

@@ -28,0 +30,0 @@ };

@@ -6,2 +6,3 @@ 'use strict';

var React = require('react');
require('@alfalab/hooks');
var utils = require('./utils.js');

@@ -26,2 +27,3 @@ var useMatchMedia = require('./useMatchMedia.js');

}, [matches, onMatchChange]);
// eslint-disable-next-line react/jsx-no-useless-fragment
return React__default['default'].createElement(React.Fragment, null, matches && IS_BROWSER ? children : null);

@@ -28,0 +30,0 @@ };

@@ -6,2 +6,3 @@ 'use strict';

require('react');
require('@alfalab/hooks');
require('./utils.js');

@@ -8,0 +9,0 @@ var useMatchMedia = require('./useMatchMedia.js');

3

cssm/useMatchMedia.d.ts
/**
* Хук для медиа запросов.
* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
declare const useMatchMedia: (query: string) => boolean[];
declare const useMatchMedia: (query: string, defaultValue?: boolean) => boolean[];
export { useMatchMedia };

@@ -6,2 +6,3 @@ 'use strict';

var React = require('react');
var hooks = require('@alfalab/hooks');
var utils = require('./utils.js');

@@ -12,12 +13,24 @@

* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
var useMatchMedia = function (query) {
var _a = React.useState(false), matches = _a[0], setMatches = _a[1];
React.useEffect(function () {
var useMatchMedia = function (query, defaultValue) {
if (defaultValue === void 0) { defaultValue = false; }
var _a = React.useState(defaultValue), matches = _a[0], setMatches = _a[1];
hooks.useLayoutEffect_SAFE_FOR_SSR(function () {
var mql = utils.getMatchMedia(query);
var handleMatchChange = function () { return setMatches(mql.matches); };
mql.addListener(handleMatchChange);
handleMatchChange();
if (mql.addListener) {
mql.addListener(handleMatchChange);
}
else {
mql.addEventListener('change', handleMatchChange);
}
return function () {
mql.removeListener(handleMatchChange);
if (mql.removeListener) {
mql.removeListener(handleMatchChange);
}
else {
mql.removeEventListener('change', handleMatchChange);
}
utils.releaseMatchMedia(query);

@@ -24,0 +37,0 @@ };

import React, { useEffect, Fragment } from 'react';
import '@alfalab/hooks';
import { isPointerEventsSupported, isTouchSupported } from './utils.js';

@@ -17,2 +18,3 @@ import { useMatchMedia } from './useMatchMedia.js';

}, [matches, onMatchChange]);
// eslint-disable-next-line react/jsx-no-useless-fragment
return React.createElement(Fragment, null, matches && IS_BROWSER ? children : null);

@@ -19,0 +21,0 @@ };

import 'react';
import '@alfalab/hooks';
import './utils.js';
export { useMatchMedia } from './useMatchMedia.js';
export { Mq } from './Component.js';
/**
* Хук для медиа запросов.
* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
declare const useMatchMedia: (query: string) => boolean[];
declare const useMatchMedia: (query: string, defaultValue?: boolean) => boolean[];
export { useMatchMedia };

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

import { useState, useEffect } from 'react';
import { useState } from 'react';
import { useLayoutEffect_SAFE_FOR_SSR } from '@alfalab/hooks';
import { getMatchMedia, releaseMatchMedia } from './utils.js';

@@ -7,12 +8,24 @@

* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
var useMatchMedia = function (query) {
var _a = useState(false), matches = _a[0], setMatches = _a[1];
useEffect(function () {
var useMatchMedia = function (query, defaultValue) {
if (defaultValue === void 0) { defaultValue = false; }
var _a = useState(defaultValue), matches = _a[0], setMatches = _a[1];
useLayoutEffect_SAFE_FOR_SSR(function () {
var mql = getMatchMedia(query);
var handleMatchChange = function () { return setMatches(mql.matches); };
mql.addListener(handleMatchChange);
handleMatchChange();
if (mql.addListener) {
mql.addListener(handleMatchChange);
}
else {
mql.addEventListener('change', handleMatchChange);
}
return function () {
mql.removeListener(handleMatchChange);
if (mql.removeListener) {
mql.removeListener(handleMatchChange);
}
else {
mql.removeEventListener('change', handleMatchChange);
}
releaseMatchMedia(query);

@@ -19,0 +32,0 @@ };

@@ -6,2 +6,3 @@ 'use strict';

require('react');
require('@alfalab/hooks');
require('./utils.js');

@@ -8,0 +9,0 @@ var useMatchMedia = require('./useMatchMedia.js');

import React, { useEffect, Fragment } from 'react';
import '@alfalab/hooks';
import { isPointerEventsSupported, isTouchSupported } from './utils.js';

@@ -16,2 +17,3 @@ import { useMatchMedia } from './useMatchMedia.js';

}, [matches, onMatchChange]);
// eslint-disable-next-line react/jsx-no-useless-fragment
return React.createElement(Fragment, null, matches && IS_BROWSER ? children : null);

@@ -18,0 +20,0 @@ };

import 'react';
import '@alfalab/hooks';
import './utils.js';
export { useMatchMedia } from './useMatchMedia.js';
export { Mq } from './Component.js';
/**
* Хук для медиа запросов.
* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
declare const useMatchMedia: (query: string) => boolean[];
declare const useMatchMedia: (query: string, defaultValue?: boolean) => boolean[];
export { useMatchMedia };

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

import { useState, useEffect } from 'react';
import { useState } from 'react';
import { useLayoutEffect_SAFE_FOR_SSR } from '@alfalab/hooks';
import { getMatchMedia, releaseMatchMedia } from './utils.js';

@@ -7,12 +8,23 @@

* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
const useMatchMedia = (query) => {
const [matches, setMatches] = useState(false);
useEffect(() => {
const useMatchMedia = (query, defaultValue = false) => {
const [matches, setMatches] = useState(defaultValue);
useLayoutEffect_SAFE_FOR_SSR(() => {
const mql = getMatchMedia(query);
const handleMatchChange = () => setMatches(mql.matches);
mql.addListener(handleMatchChange);
handleMatchChange();
if (mql.addListener) {
mql.addListener(handleMatchChange);
}
else {
mql.addEventListener('change', handleMatchChange);
}
return () => {
mql.removeListener(handleMatchChange);
if (mql.removeListener) {
mql.removeListener(handleMatchChange);
}
else {
mql.removeEventListener('change', handleMatchChange);
}
releaseMatchMedia(query);

@@ -19,0 +31,0 @@ };

{
"name": "@alfalab/core-components-mq",
"version": "4.0.1",
"version": "4.1.0",
"description": "",

@@ -18,3 +18,6 @@ "keywords": [],

"react": "^16.9.0 || ^17.0.1 || ^18.0.0"
},
"dependencies": {
"@alfalab/hooks": "^1.13.0"
}
}

@@ -58,3 +58,3 @@ const http = require('http');

return new Promise((resolve, reject) => {
const req = http.request(options, res => {
const req = http.request(options, (res) => {
res.on('end', () => {

@@ -61,0 +61,0 @@ resolve();

/**
* Хук для медиа запросов.
* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
declare const useMatchMedia: (query: string) => boolean[];
declare const useMatchMedia: (query: string, defaultValue?: boolean) => boolean[];
export { useMatchMedia };

@@ -6,2 +6,3 @@ 'use strict';

var React = require('react');
var hooks = require('@alfalab/hooks');
var utils = require('./utils.js');

@@ -12,12 +13,24 @@

* @param query media выражение или кастомный запрос из `mq.json`, например `--mobile`.
* @param defaultValue Значение по-умолчанию.
*/
var useMatchMedia = function (query) {
var _a = React.useState(false), matches = _a[0], setMatches = _a[1];
React.useEffect(function () {
var useMatchMedia = function (query, defaultValue) {
if (defaultValue === void 0) { defaultValue = false; }
var _a = React.useState(defaultValue), matches = _a[0], setMatches = _a[1];
hooks.useLayoutEffect_SAFE_FOR_SSR(function () {
var mql = utils.getMatchMedia(query);
var handleMatchChange = function () { return setMatches(mql.matches); };
mql.addListener(handleMatchChange);
handleMatchChange();
if (mql.addListener) {
mql.addListener(handleMatchChange);
}
else {
mql.addEventListener('change', handleMatchChange);
}
return function () {
mql.removeListener(handleMatchChange);
if (mql.removeListener) {
mql.removeListener(handleMatchChange);
}
else {
mql.removeEventListener('change', handleMatchChange);
}
utils.releaseMatchMedia(query);

@@ -24,0 +37,0 @@ };

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