• Home
  • Raw
  • Download

Lines Matching full:condition

60  * Match media query condition.
61 * @param {string} condition - Media query condition.
66 export function matchMediaQueryCondition(condition: string, mediaStatus: object, jsQuery: boolean):…
67 if (!condition || !mediaStatus) {
71 // If width and height are not initialized, and the query condition includes 'width' or 'height',
73 if (mediaStatus['width'] === 0 && (condition.includes('width') || condition.includes('height'))) {
76 if (jsQuery && queryHistoryList.has(condition)) {
77 const queryHistory: MediaMatchInfo = queryHistoryList.get(condition);
82 const result: boolean = doMatchMediaQueryCondition(condition, mediaStatus);
83 queryHistoryList.set(condition, {status: mediaStatus, result: result});
92 * Match media query condition.
93 * @param {string} condition - Media query condition.
97 function doMatchMediaQueryCondition(condition: string, mediaStatus: object): boolean {
98 const noSpace: string = condition.replace(/\s*/g, '');
103 // Check if the media query condition is legal.
119 Log.debug('Illegal condition.');
152 * Parse single condition, such as: (100 < width).
153 * @param {string} condition - Single condition.
158 function parseSingleCondition(condition: string, mediaStatus: object, failReason: FailReason): bool…
159 if (MEDIA_QUERY_RULE.CSS_LEVEL4_MULTI.exec(condition)) {
160 if (parseCss4MultiCondition(condition, mediaStatus, failReason)) {
163 } else if (MEDIA_QUERY_RULE.CSS_LEVEL4_LEFT.exec(condition)) {
164 if (parseCss4LeftCondtion(condition, mediaStatus, failReason)) {
167 } else if (MEDIA_QUERY_RULE.CSS_LEVEL4_RIGHT.exec(condition)) {
168 if (parseCss4RightCondition(condition, mediaStatus, failReason)) {
171 } else if (MEDIA_QUERY_RULE.CSS_LEVEL3_RULE.exec(condition)) {
172 if (parseCss3Condition(condition, mediaStatus, failReason)) {
175 } else if (MEDIA_QUERY_RULE.DEVICETYPE_RULE.exec(condition)) {
176 if (parseDeviceTypeCondition(condition, mediaStatus, failReason)) {
179 } else if (MEDIA_QUERY_RULE.ORIENTATION_RULE.exec(condition)) {
180 if (parseOrientationCondition(condition, mediaStatus, failReason)) {
183 } else if (MEDIA_QUERY_RULE.SCREEN_SHAPE_RULE.exec(condition)) {
184 if (parseScreenShapeCondition(condition, mediaStatus, failReason)) {
187 } else if (MEDIA_QUERY_RULE.DARK_MODE.exec(condition)) {
188 if (parseDarkModeCondition(condition, mediaStatus, failReason)) {
191 } else if (MEDIA_QUERY_RULE.ASPECT_RATIO.exec(condition)) {
192 if (parseAspectRatioCondition(condition, mediaStatus, failReason)) {
195 } else if (MEDIA_QUERY_RULE.PATTERN.exec(condition)) {
196 if (parsePatternCondition(condition, mediaStatus, failReason)) {
200 Log.debug('Illegal condition');
209 * @param {string} condition - Conditions connect with 'and'.
214 function parseAndCondtion(condition: string, mediaStatus: object, failReason: FailReason): boolean {
215 // Split and condition to simple conditions.
216 const noAnd: string = condition.replace(/and[^a-z]/g, ',(');
231 * Parse css4 multi-style condition, such as: (100 < width < 1000).
232 * @param {string} condition - Css4 multi-style condition.
237 function parseCss4MultiCondition(condition:string, mediaStatus: object, failReason: FailReason): bo…
239 const feature = condition.match(patt);
252 * Parse css4 style condition, device info is in the left, such as: (width < 1000).
253 * @param {string} condition - Css4 style condition.
258 function parseCss4LeftCondtion(condition: string, mediaStatus: object, failReason: FailReason): boo…
259 const feature = condition.match(/[a-z-]+|[0-9.]+/g);
266 const relationship = condition.match(/[><=]+/g);
272 * Parse css4 style condition, device info is in the right, such as: (1000 < width).
273 * @param {string} condition - Css4 style condition.
278 function parseCss4RightCondition(condition: string, mediaStatus: object, failReason: FailReason): b…
279 const feature = condition.match(/[a-z-]+|[0-9.]+/g);
294 const relationship = condition.match(/[><=]+/g);
299 * Parse css3 style condition, such as: (min-width: 1000).
300 * @param {String} condition - Css3 style condition.
305 function parseCss3Condition(condition: string, mediaStatus: object, failReason: FailReason): boolea…
306 const feature = condition.match(/[a-z-]+|[0-9.]+/g);
328 * Parse paatern style condition, such as: (pattern: normal).
329 * @param {String} condition - pattern style condition.
334 function parsePatternCondition(condition: string, mediaStatus: object, failReason: FailReason): boo…
335 const pattern = condition.match(/[a-z-]+/g);
364 * Parse screen orientation condition, such as: (orientation: portrait).
365 * @param {string} condition - Orientation type condition.
370 function parseOrientationCondition(condition: string, mediaStatus: object, failReason: FailReason):…
371 const orientaton = condition.match(/[a-z-]+/g);
380 * Parse device type condition, such as: (device-type: tv).
381 * @param {string} condition - Device type condition.
386 function parseDeviceTypeCondition(condition: string, mediaStatus: object, failReason: FailReason): …
387 const deviceType = condition.match(/[a-z-]+/g);
400 * Parse screen shape condition, such as: (round-screen: true).
401 * @param {string} condition - Screen shape condition.
406 function parseScreenShapeCondition(condition: string, mediaStatus: object, failReason: FailReason):…
407 const shape = condition.match(/[a-z-]+/g);
416 * parse dark mode condition, such as: (dark-mode: true)
417 * @param {String} condition: dark condition
421 function parseDarkModeCondition(condition: string, mediaStatus: object, failReason: FailReason): bo…
422 const darkMode = condition.match(/[a-z-]+/g);
431 * parse aspect ratio condition, such as: (aspect-ratio: 8/3)
432 * @param {String} condition: (device)?-aspect-ratio condition
436 function parseAspectRatioCondition(condition: string, mediaStatus: object, failReason: FailReason):…
438 const aspectRatio = condition.match(/[a-z-\d-\/]+/g);
466 * Transfer unit the same with condition value unit.
467 * @param {number} value - Device value should be transfer unit the same with condition value.
468 * @param {string} unit - Condition value unit, such as: dpi/dpcm/dppx.
488 * @param {number|string} leftValue - Number device value. String condition value.
490 * @param {number|string} rightValue - Number device value. String condition value.