'a'
mh-two-thousand-and-two
2024-04-12 44d2c92345cd156a59fc327b3060292a282d2893
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
export default function createMediaQueryObserver () {
  const mediaQueryObserver = {}
  const {
    windowWidth,
    windowHeight
  } = __GLOBAL__.getSystemInfoSync()
 
  const orientation = windowWidth < windowHeight ? 'portrait' : 'landscape'
 
  mediaQueryObserver.observe = (options, callback) => {
    let matches = true
    for (const item in options) {
      const itemValue = item === 'orientation' ? options[item] : Number(options[item])
      if (options[item] !== '') {
        if (item === 'width') {
          if (itemValue === windowWidth) {
            matches = true
          } else {
            matches = false
            callback(matches)
            return matches
          }
        }
        if (item === 'minWidth') {
          if (windowWidth >= itemValue) {
            matches = true
          } else {
            matches = false
            callback(matches)
            return matches
          }
        }
        if (item === 'maxWidth') {
          if (windowWidth <= itemValue) {
            matches = true
          } else {
            matches = false
            callback(matches)
            return matches
          }
        }
 
        if (item === 'height') {
          if (itemValue === windowHeight) {
            matches = true
          } else {
            matches = false
            callback(matches)
            return matches
          }
        }
        if (item === 'minHeight') {
          if (windowHeight >= itemValue) {
            matches = true
          } else {
            matches = false
            callback(matches)
            return matches
          }
        }
        if (item === 'maxHeight') {
          if (windowHeight <= itemValue) {
            matches = true
          } else {
            matches = false
            callback(matches)
            return matches
          }
        }
 
        if (item === 'orientation') {
          if (options[item] === orientation) {
            matches = true
          } else {
            matches = false
            callback(matches)
            return matches
          }
        }
      }
    }
    callback(matches)
 
    return matches
  }
 
  mediaQueryObserver.disconnect = () => {
  }
 
  return mediaQueryObserver
}