include-media-query-builder
Advanced tools
Comparing version 1.0.4 to 1.1.0
@@ -1,3 +0,3 @@ | ||
import { ParsedQuery } from './types'; | ||
declare const buildParsedQuery: <Size extends string | number | symbol>(breakpoints: Record<Size, number>, { operator, size }: ParsedQuery<Size>) => string; | ||
import { ParsedQuery, RawQuery } from './types'; | ||
declare const buildParsedQuery: <Size extends string | number | symbol>(breakpoints: Record<Size, number>, query: string | ParsedQuery<Size>) => string; | ||
export default buildParsedQuery; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const buildParsedQuery = (breakpoints, { operator, size }) => { | ||
const types_1 = require("./types"); | ||
const buildParsedQuery = (breakpoints, query) => { | ||
if ((0, types_1.isRawQuery)(query)) { | ||
return query; | ||
} | ||
const { operator, size } = query; | ||
const value = breakpoints[size]; | ||
@@ -5,0 +10,0 @@ if (operator === '<') { |
@@ -1,3 +0,3 @@ | ||
import { ParsedQuery } from './types'; | ||
declare const parseQuery: <Size extends string | number | symbol>(breakpoints: Record<Size, number>, query: string) => ParsedQuery<Size>; | ||
import { ParsedQuery, RawQuery } from './types'; | ||
declare const parseQuery: <Size extends string | number | symbol>(breakpoints: Record<Size, number>, query: string) => string | ParsedQuery<Size>; | ||
export default parseQuery; |
@@ -11,7 +11,7 @@ "use strict"; | ||
if (!matches) { | ||
throw new Error('Invalid query'); | ||
return query; | ||
} | ||
const [, operator, size] = matches; | ||
if (!(0, isOperator_1.default)(operator) || !(0, isSize_1.default)(breakpoints, size)) { | ||
throw new Error('Invalid query'); | ||
return query; | ||
} | ||
@@ -18,0 +18,0 @@ return { operator, size }; |
@@ -6,1 +6,3 @@ export type Operator = '<' | '<=' | '>=' | '>' | `≤` | `≥`; | ||
} | ||
export type RawQuery = string; | ||
export declare const isRawQuery: (value: unknown) => value is string; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.isRawQuery = void 0; | ||
const isRawQuery = (value) => { | ||
return typeof value === 'string'; | ||
}; | ||
exports.isRawQuery = isRawQuery; |
{ | ||
"name": "include-media-query-builder", | ||
"version": "1.0.4", | ||
"version": "1.1.0", | ||
"description": "Build include-media-like media queries in JavaScript", | ||
@@ -49,6 +49,6 @@ "keywords": [ | ||
"np": "^7.6.3", | ||
"prettier": "^2.8.3", | ||
"prettier": "^2.8.4", | ||
"rimraf": "^4.1.2", | ||
"typescript": "^4.9.4" | ||
"typescript": "^4.9.5" | ||
} | ||
} |
@@ -30,5 +30,6 @@ # include-media-query-builder | ||
console.log(buildMediaQuery(sizes, ['<s'])); // (max-width: 767px) | ||
console.log(buildMediaQuery(sizes, ['>s', '<=m'])); // (min-width: 769px) and (max-width: 992px) | ||
console.log(buildMediaQuery(sizes, ['>=s', '<=m'])); // (min-width: 768px) and (max-width: 992px) | ||
console.log(buildMediaQuery(sizes, ['<s'])); // (max-width: 767px) | ||
console.log(buildMediaQuery(sizes, ['<s', '(hover: none)'])); // (max-width: 767px) and (hover: none) | ||
console.log(buildMediaQuery(sizes, ['>s', '<=m'])); // (min-width: 769px) and (max-width: 992px) | ||
console.log(buildMediaQuery(sizes, ['>=s', '<=m'])); // (min-width: 768px) and (max-width: 992px) | ||
``` |
10185
143
35