@mapsindoors/map-template 1.12.0-rc.3 → 1.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/dist/{combo-box-item.entry-77c80135.mjs → combo-box-item.entry-07f3fa6c.mjs} +1 -1
  2. package/dist/{combo-box-item.entry-04f0e546.mjs → combo-box-item.entry-e61dbe58.mjs} +1 -1
  3. package/dist/mapsindoors-react.es.js +1 -1
  4. package/dist/mapsindoors-react.umd.js +1 -1
  5. package/dist/mapsindoors-webcomponent.es.js +1 -1
  6. package/dist/mapsindoors-webcomponent.umd.js +1 -1
  7. package/dist/{mi-card_2.entry-1164b737.mjs → mi-card_2.entry-78c746b8.mjs} +1 -1
  8. package/dist/{mi-card_2.entry-112d6cec.mjs → mi-card_2.entry-b8776b0f.mjs} +1 -1
  9. package/dist/{mi-chip.entry-3a9b51dd.mjs → mi-chip.entry-8ffe0bf7.mjs} +1 -1
  10. package/dist/{mi-chip.entry-5f57e71c.mjs → mi-chip.entry-9d560d0a.mjs} +1 -1
  11. package/dist/{mi-column.entry-e8b74502.mjs → mi-column.entry-de427d2f.mjs} +1 -1
  12. package/dist/{mi-column.entry-fd0490a6.mjs → mi-column.entry-f2f62053.mjs} +1 -1
  13. package/dist/{mi-combo-box.entry-5776c4cc.mjs → mi-combo-box.entry-d1911040.mjs} +1 -1
  14. package/dist/{mi-combo-box.entry-3530ed61.mjs → mi-combo-box.entry-e5eb3ff4.mjs} +1 -1
  15. package/dist/{mi-data-table.entry-0a5cd0ce.mjs → mi-data-table.entry-687889c7.mjs} +1 -1
  16. package/dist/{mi-data-table.entry-0d04f901.mjs → mi-data-table.entry-b2977b88.mjs} +1 -1
  17. package/dist/{mi-distance_2.entry-3fae4169.mjs → mi-distance_2.entry-1af42b54.mjs} +1 -1
  18. package/dist/{mi-distance_2.entry-c18ff16b.mjs → mi-distance_2.entry-8f2f984d.mjs} +1 -1
  19. package/dist/{mi-dropdown-item.entry-8979468f.mjs → mi-dropdown-item.entry-020d6c45.mjs} +1 -1
  20. package/dist/{mi-dropdown-item.entry-63c41efc.mjs → mi-dropdown-item.entry-cb7c91da.mjs} +1 -1
  21. package/dist/{mi-dropdown.entry-870fa8de.mjs → mi-dropdown.entry-312973f9.mjs} +1 -1
  22. package/dist/{mi-dropdown.entry-ff88e9d8.mjs → mi-dropdown.entry-a4a14c4e.mjs} +1 -1
  23. package/dist/{mi-floor-selector.entry-9a4296ba.mjs → mi-floor-selector.entry-4c2436b9.mjs} +1 -1
  24. package/dist/{mi-floor-selector.entry-25915e6f.mjs → mi-floor-selector.entry-99c621e8.mjs} +1 -1
  25. package/dist/{mi-keyboard.entry-b0c17b79.mjs → mi-keyboard.entry-25c341e2.mjs} +1 -1
  26. package/dist/{mi-keyboard.entry-173450cc.mjs → mi-keyboard.entry-cfa60a40.mjs} +1 -1
  27. package/dist/{mi-list-item-category.entry-b2884dba.mjs → mi-list-item-category.entry-9b680fca.mjs} +1 -1
  28. package/dist/{mi-list-item-category.entry-b9536a7c.mjs → mi-list-item-category.entry-be9b3824.mjs} +1 -1
  29. package/dist/{mi-list-item-location.entry-ab46e53a.mjs → mi-list-item-location.entry-0356b187.mjs} +1 -1
  30. package/dist/{mi-list-item-location.entry-19680f21.mjs → mi-list-item-location.entry-0cf06306.mjs} +1 -1
  31. package/dist/{mi-list.entry-40b86f7f.mjs → mi-list.entry-12aca06e.mjs} +1 -1
  32. package/dist/{mi-list.entry-7126271f.mjs → mi-list.entry-a7edabab.mjs} +1 -1
  33. package/dist/{mi-location-booking.entry-0f7f2812.mjs → mi-location-booking.entry-aa57d6d7.mjs} +1 -1
  34. package/dist/{mi-location-booking.entry-e497a20e.mjs → mi-location-booking.entry-f31358f8.mjs} +1 -1
  35. package/dist/{mi-location-info.entry-5cc2e91c.mjs → mi-location-info.entry-3fcd1d02.mjs} +1 -1
  36. package/dist/{mi-location-info.entry-c0cc0b69.mjs → mi-location-info.entry-95d2d5a7.mjs} +1 -1
  37. package/dist/{mi-map-googlemaps.entry-e559c0dc.mjs → mi-map-googlemaps.entry-2505695e.mjs} +1 -1
  38. package/dist/{mi-map-googlemaps.entry-46829aaa.mjs → mi-map-googlemaps.entry-6e5d65a9.mjs} +1 -1
  39. package/dist/{mi-map-mapbox.entry-68c783cf.mjs → mi-map-mapbox.entry-0281a750.mjs} +1 -1
  40. package/dist/{mi-map-mapbox.entry-fb13275f.mjs → mi-map-mapbox.entry-a9c72554.mjs} +1 -1
  41. package/dist/{mi-metric-card.entry-7e16c8f8.mjs → mi-metric-card.entry-103a6502.mjs} +1 -1
  42. package/dist/{mi-metric-card.entry-2f6981e7.mjs → mi-metric-card.entry-9940df0c.mjs} +1 -1
  43. package/dist/{mi-my-position.entry-29dea178.mjs → mi-my-position.entry-a07d0db1.mjs} +1 -1
  44. package/dist/{mi-my-position.entry-03c8f712.mjs → mi-my-position.entry-abf5fc84.mjs} +1 -1
  45. package/dist/{mi-notification.entry-93b18008.mjs → mi-notification.entry-48d838f8.mjs} +1 -1
  46. package/dist/{mi-notification.entry-4d06c318.mjs → mi-notification.entry-7c843b72.mjs} +1 -1
  47. package/dist/{mi-route-instructions-heading.entry-f3b4f871.mjs → mi-route-instructions-heading.entry-0ade4405.mjs} +1 -1
  48. package/dist/{mi-route-instructions-heading.entry-8f5eaa1d.mjs → mi-route-instructions-heading.entry-d1cc4f8b.mjs} +1 -1
  49. package/dist/{mi-route-instructions-maneuver-legacy.entry-87770e56.mjs → mi-route-instructions-maneuver-legacy.entry-cd92aee9.mjs} +1 -1
  50. package/dist/{mi-route-instructions-maneuver-legacy.entry-6e593a3c.mjs → mi-route-instructions-maneuver-legacy.entry-e92172b0.mjs} +1 -1
  51. package/dist/{mi-route-instructions-maneuver.entry-703bbcd9.mjs → mi-route-instructions-maneuver.entry-2ce8d736.mjs} +1 -1
  52. package/dist/{mi-route-instructions-maneuver.entry-b39f4ad6.mjs → mi-route-instructions-maneuver.entry-a0f7e7f6.mjs} +1 -1
  53. package/dist/{mi-route-instructions-step-legacy.entry-27a5fe00.mjs → mi-route-instructions-step-legacy.entry-12d48c7d.mjs} +1 -1
  54. package/dist/{mi-route-instructions-step-legacy.entry-cf34cec4.mjs → mi-route-instructions-step-legacy.entry-824eab4d.mjs} +1 -1
  55. package/dist/{mi-route-instructions-step.entry-40bf0df8.mjs → mi-route-instructions-step.entry-34942518.mjs} +1 -1
  56. package/dist/{mi-route-instructions-step.entry-dff81020.mjs → mi-route-instructions-step.entry-e3cb9f6d.mjs} +1 -1
  57. package/dist/{mi-route-instructions.entry-d9cabf3f.mjs → mi-route-instructions.entry-9e19f63f.mjs} +1 -1
  58. package/dist/{mi-route-instructions.entry-d38585d6.mjs → mi-route-instructions.entry-b90ea760.mjs} +1 -1
  59. package/dist/{mi-scroll-buttons.entry-02b66445.mjs → mi-scroll-buttons.entry-0c2416e5.mjs} +1 -1
  60. package/dist/{mi-scroll-buttons.entry-7666d055.mjs → mi-scroll-buttons.entry-d945dcd5.mjs} +1 -1
  61. package/dist/{mi-search.entry-5e428c8e.mjs → mi-search.entry-9df188c1.mjs} +1 -1
  62. package/dist/{mi-search.entry-7ad753cf.mjs → mi-search.entry-d2420b73.mjs} +1 -1
  63. package/dist/{mi-share-sms.entry-25262279.mjs → mi-share-sms.entry-ab14b8b4.mjs} +1 -1
  64. package/dist/{mi-share-sms.entry-33766d61.mjs → mi-share-sms.entry-cd47cf5d.mjs} +1 -1
  65. package/dist/{mi-step-switcher.entry-78ed037f.mjs → mi-step-switcher.entry-8f55ac40.mjs} +1 -1
  66. package/dist/{mi-step-switcher.entry-3233106c.mjs → mi-step-switcher.entry-9118632b.mjs} +1 -1
  67. package/dist/{mi-tab-panel.entry-d77c094f.mjs → mi-tab-panel.entry-5f4eb061.mjs} +1 -1
  68. package/dist/{mi-tab-panel.entry-8c9b016e.mjs → mi-tab-panel.entry-701d1c21.mjs} +1 -1
  69. package/dist/{mi-tab.entry-3268902d.mjs → mi-tab.entry-667fa553.mjs} +1 -1
  70. package/dist/{mi-tab.entry-617aef9d.mjs → mi-tab.entry-c127b780.mjs} +1 -1
  71. package/dist/{mi-tabs.entry-94ef09f5.mjs → mi-tabs.entry-dce24af7.mjs} +1 -1
  72. package/dist/{mi-tabs.entry-0056816a.mjs → mi-tabs.entry-e292708a.mjs} +1 -1
  73. package/dist/{mi-time.entry-4b104467.mjs → mi-time.entry-6aabb55a.mjs} +1 -1
  74. package/dist/{mi-time.entry-529935a7.mjs → mi-time.entry-dc1092d1.mjs} +1 -1
  75. package/dist/{reactcomponent-d95a230f.mjs → reactcomponent-af414be3.mjs} +2 -2
  76. package/dist/{webcomponent-742e8715.mjs → webcomponent-954b7b16.mjs} +2 -2
  77. package/package.json +1 -1
  78. package/dist/combo-box-item.entry-bacd907e.mjs +0 -12
  79. package/dist/combo-box-item.entry-f1f36e49.mjs +0 -14
  80. package/dist/mi-card_2.entry-138c7653.mjs +0 -23
  81. package/dist/mi-card_2.entry-e0d0d87d.mjs +0 -25
  82. package/dist/mi-chip.entry-b0cb0da5.mjs +0 -18
  83. package/dist/mi-chip.entry-dc71c49d.mjs +0 -16
  84. package/dist/mi-column.entry-fe197b13.mjs +0 -18
  85. package/dist/mi-column.entry-fe5212e3.mjs +0 -20
  86. package/dist/mi-combo-box.entry-3ee6e418.mjs +0 -260
  87. package/dist/mi-combo-box.entry-b23feef3.mjs +0 -262
  88. package/dist/mi-data-table.entry-06650e96.mjs +0 -215
  89. package/dist/mi-data-table.entry-ff82dd01.mjs +0 -213
  90. package/dist/mi-distance_2.entry-80019828.mjs +0 -56
  91. package/dist/mi-distance_2.entry-f83608c7.mjs +0 -54
  92. package/dist/mi-dropdown-item.entry-6ded2ee5.mjs +0 -14
  93. package/dist/mi-dropdown-item.entry-bb3d99f0.mjs +0 -12
  94. package/dist/mi-dropdown.entry-adcf21a7.mjs +0 -298
  95. package/dist/mi-dropdown.entry-e1db1b2f.mjs +0 -296
  96. package/dist/mi-floor-selector.entry-2e376330.mjs +0 -112
  97. package/dist/mi-floor-selector.entry-6b91f5fc.mjs +0 -110
  98. package/dist/mi-keyboard.entry-668f536d.mjs +0 -2960
  99. package/dist/mi-keyboard.entry-bc699e75.mjs +0 -2962
  100. package/dist/mi-list-item-category.entry-dbef7e35.mjs +0 -36
  101. package/dist/mi-list-item-category.entry-e8069e41.mjs +0 -38
  102. package/dist/mi-list-item-location.entry-c5cda4ca.mjs +0 -134
  103. package/dist/mi-list-item-location.entry-d34a5690.mjs +0 -136
  104. package/dist/mi-list.entry-63f68584.mjs +0 -39
  105. package/dist/mi-list.entry-f9fdb0da.mjs +0 -41
  106. package/dist/mi-location-booking.entry-32cb574a.mjs +0 -4865
  107. package/dist/mi-location-booking.entry-9c5c44ac.mjs +0 -4863
  108. package/dist/mi-location-info.entry-5def39bc.mjs +0 -29
  109. package/dist/mi-location-info.entry-d60b36c6.mjs +0 -31
  110. package/dist/mi-map-googlemaps.entry-88758c5d.mjs +0 -398
  111. package/dist/mi-map-googlemaps.entry-f4414f7e.mjs +0 -396
  112. package/dist/mi-map-mapbox.entry-2c18333b.mjs +0 -300
  113. package/dist/mi-map-mapbox.entry-b5853879.mjs +0 -298
  114. package/dist/mi-metric-card.entry-70517b62.mjs +0 -26
  115. package/dist/mi-metric-card.entry-bb758c43.mjs +0 -28
  116. package/dist/mi-my-position.entry-23e243aa.mjs +0 -1395
  117. package/dist/mi-my-position.entry-5a94c83d.mjs +0 -1393
  118. package/dist/mi-notification.entry-3399c382.mjs +0 -83
  119. package/dist/mi-notification.entry-401c9cb9.mjs +0 -81
  120. package/dist/mi-route-instructions-heading.entry-229e8b72.mjs +0 -74
  121. package/dist/mi-route-instructions-heading.entry-827e736e.mjs +0 -72
  122. package/dist/mi-route-instructions-maneuver-legacy.entry-66dad3ef.mjs +0 -75
  123. package/dist/mi-route-instructions-maneuver-legacy.entry-8ffeb735.mjs +0 -73
  124. package/dist/mi-route-instructions-maneuver.entry-24bcf67d.mjs +0 -75
  125. package/dist/mi-route-instructions-maneuver.entry-4807bc67.mjs +0 -73
  126. package/dist/mi-route-instructions-step-legacy.entry-952a5c0b.mjs +0 -201
  127. package/dist/mi-route-instructions-step-legacy.entry-ea0a5303.mjs +0 -199
  128. package/dist/mi-route-instructions-step.entry-c3beb0c0.mjs +0 -234
  129. package/dist/mi-route-instructions-step.entry-e8a13502.mjs +0 -236
  130. package/dist/mi-route-instructions.entry-324ebad1.mjs +0 -142
  131. package/dist/mi-route-instructions.entry-fd85a9a4.mjs +0 -140
  132. package/dist/mi-scroll-buttons.entry-c069579b.mjs +0 -46
  133. package/dist/mi-scroll-buttons.entry-fad1b475.mjs +0 -48
  134. package/dist/mi-search.entry-b0773d99.mjs +0 -209
  135. package/dist/mi-search.entry-cc6b2332.mjs +0 -207
  136. package/dist/mi-share-sms.entry-28ee50b1.mjs +0 -53
  137. package/dist/mi-share-sms.entry-ab707d58.mjs +0 -55
  138. package/dist/mi-step-switcher.entry-81d295f8.mjs +0 -24
  139. package/dist/mi-step-switcher.entry-95ade6f3.mjs +0 -26
  140. package/dist/mi-tab-panel.entry-eee99299.mjs +0 -19
  141. package/dist/mi-tab-panel.entry-fe762ef5.mjs +0 -21
  142. package/dist/mi-tab.entry-458faa22.mjs +0 -11
  143. package/dist/mi-tab.entry-d45194c0.mjs +0 -13
  144. package/dist/mi-tabs.entry-25ce0ba5.mjs +0 -34
  145. package/dist/mi-tabs.entry-a78c550d.mjs +0 -36
  146. package/dist/mi-time.entry-c35e476f.mjs +0 -43
  147. package/dist/mi-time.entry-cae11551.mjs +0 -45
  148. package/dist/reactcomponent-0e140537.mjs +0 -31717
  149. package/dist/webcomponent-592597b2.mjs +0 -36391
@@ -1,1393 +0,0 @@
1
- import { r as ji, c as di, h as V, H as Ai } from "./webcomponent-592597b2.mjs";
2
- import { c as zi, a as xi } from "./_commonjsHelpers-ba3f0406-b96e6d6a.mjs";
3
- var Si = zi(function(o, s) {
4
- (function(M, g) {
5
- var T = "1.0.35", E = "", ai = "?", W = "function", C = "undefined", H = "object", P = "string", si = "major", e = "model", n = "name", i = "type", t = "vendor", a = "version", O = "architecture", S = "console", b = "mobile", N = "tablet", d = "smarttv", j = "wearable", q = "embedded", J = 350, _ = "Amazon", f = "Apple", ri = "ASUS", Mi = "BlackBerry", A = "Browser", U = "Chrome", pi = "Edge", Y = "Firefox", Q = "Google", ci = "Huawei", X = "LG", F = "Microsoft", ui = "Motorola", R = "Opera", $ = "Samsung", Ni = "Sharp", Z = "Sony", ii = "Xiaomi", ei = "Zebra", bi = "Facebook", li = "Chromium OS", gi = "Mac OS", hi = function(l, I) {
6
- var u = {};
7
- for (var D in l)
8
- I[D] && I[D].length % 2 === 0 ? u[D] = I[D].concat(l[D]) : u[D] = l[D];
9
- return u;
10
- }, G = function(l) {
11
- for (var I = {}, u = 0; u < l.length; u++)
12
- I[l[u].toUpperCase()] = l[u];
13
- return I;
14
- }, wi = function(l, I) {
15
- return typeof l === P ? v(I).indexOf(v(l)) !== -1 : !1;
16
- }, v = function(l) {
17
- return l.toLowerCase();
18
- }, yi = function(l) {
19
- return typeof l === P ? l.replace(/[^\d\.]/g, E).split(".")[0] : g;
20
- }, ti = function(l, I) {
21
- if (typeof l === P)
22
- return l = l.replace(/^\s\s*/, E), typeof I === C ? l : l.substring(0, J);
23
- }, k = function(l, I) {
24
- for (var u = 0, D, y, p, w, r, h; u < I.length && !r; ) {
25
- var ni = I[u], Ti = I[u + 1];
26
- for (D = y = 0; D < ni.length && !r && ni[D]; )
27
- if (r = ni[D++].exec(l), r)
28
- for (p = 0; p < Ti.length; p++)
29
- h = r[++y], w = Ti[p], typeof w === H && w.length > 0 ? w.length === 2 ? typeof w[1] == W ? this[w[0]] = w[1].call(this, h) : this[w[0]] = w[1] : w.length === 3 ? typeof w[1] === W && !(w[1].exec && w[1].test) ? this[w[0]] = h ? w[1].call(this, h, w[2]) : g : this[w[0]] = h ? h.replace(w[1], w[2]) : g : w.length === 4 && (this[w[0]] = h ? w[3].call(this, h.replace(w[1], w[2])) : g) : this[w] = h || g;
30
- u += 2;
31
- }
32
- }, oi = function(l, I) {
33
- for (var u in I)
34
- if (typeof I[u] === H && I[u].length > 0) {
35
- for (var D = 0; D < I[u].length; D++)
36
- if (wi(I[u][D], l))
37
- return u === ai ? g : u;
38
- } else if (wi(I[u], l))
39
- return u === ai ? g : u;
40
- return l;
41
- }, Ei = {
42
- "1.0": "/8",
43
- "1.2": "/1",
44
- "1.3": "/3",
45
- "2.0": "/412",
46
- "2.0.2": "/416",
47
- "2.0.3": "/417",
48
- "2.0.4": "/419",
49
- "?": "/"
50
- }, Ii = {
51
- ME: "4.90",
52
- "NT 3.11": "NT3.51",
53
- "NT 4.0": "NT4.0",
54
- 2e3: "NT 5.0",
55
- XP: ["NT 5.1", "NT 5.2"],
56
- Vista: "NT 6.0",
57
- 7: "NT 6.1",
58
- 8: "NT 6.2",
59
- "8.1": "NT 6.3",
60
- 10: ["NT 6.4", "NT 10.0"],
61
- RT: "ARM"
62
- }, Di = {
63
- browser: [
64
- [
65
- /\b(?:crmo|crios)\/([\w\.]+)/i
66
- // Chrome for Android/iOS
67
- ],
68
- [a, [n, "Chrome"]],
69
- [
70
- /edg(?:e|ios|a)?\/([\w\.]+)/i
71
- // Microsoft Edge
72
- ],
73
- [a, [n, "Edge"]],
74
- [
75
- // Presto based
76
- /(opera mini)\/([-\w\.]+)/i,
77
- // Opera Mini
78
- /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
79
- // Opera Mobi/Tablet
80
- /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
81
- // Opera
82
- ],
83
- [n, a],
84
- [
85
- /opios[\/ ]+([\w\.]+)/i
86
- // Opera mini on iphone >= 8.0
87
- ],
88
- [a, [n, R + " Mini"]],
89
- [
90
- /\bopr\/([\w\.]+)/i
91
- // Opera Webkit
92
- ],
93
- [a, [n, R]],
94
- [
95
- // Mixed
96
- /(kindle)\/([\w\.]+)/i,
97
- // Kindle
98
- /(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,
99
- // Lunascape/Maxthon/Netfront/Jasmine/Blazer
100
- // Trident based
101
- /(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,
102
- // Avant/IEMobile/SlimBrowser
103
- /(ba?idubrowser)[\/ ]?([\w\.]+)/i,
104
- // Baidu Browser
105
- /(?:ms|\()(ie) ([\w\.]+)/i,
106
- // Internet Explorer
107
- // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
108
- /(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,
109
- // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ
110
- /(heytap|ovi)browser\/([\d\.]+)/i,
111
- // Heytap/Ovi
112
- /(weibo)__([\d\.]+)/i
113
- // Weibo
114
- ],
115
- [n, a],
116
- [
117
- /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
118
- // UCBrowser
119
- ],
120
- [a, [n, "UC" + A]],
121
- [
122
- /microm.+\bqbcore\/([\w\.]+)/i,
123
- // WeChat Desktop for Windows Built-in Browser
124
- /\bqbcore\/([\w\.]+).+microm/i
125
- ],
126
- [a, [n, "WeChat(Win) Desktop"]],
127
- [
128
- /micromessenger\/([\w\.]+)/i
129
- // WeChat
130
- ],
131
- [a, [n, "WeChat"]],
132
- [
133
- /konqueror\/([\w\.]+)/i
134
- // Konqueror
135
- ],
136
- [a, [n, "Konqueror"]],
137
- [
138
- /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
139
- // IE11
140
- ],
141
- [a, [n, "IE"]],
142
- [
143
- /ya(?:search)?browser\/([\w\.]+)/i
144
- // Yandex
145
- ],
146
- [a, [n, "Yandex"]],
147
- [
148
- /(avast|avg)\/([\w\.]+)/i
149
- // Avast/AVG Secure Browser
150
- ],
151
- [[n, /(.+)/, "$1 Secure " + A], a],
152
- [
153
- /\bfocus\/([\w\.]+)/i
154
- // Firefox Focus
155
- ],
156
- [a, [n, Y + " Focus"]],
157
- [
158
- /\bopt\/([\w\.]+)/i
159
- // Opera Touch
160
- ],
161
- [a, [n, R + " Touch"]],
162
- [
163
- /coc_coc\w+\/([\w\.]+)/i
164
- // Coc Coc Browser
165
- ],
166
- [a, [n, "Coc Coc"]],
167
- [
168
- /dolfin\/([\w\.]+)/i
169
- // Dolphin
170
- ],
171
- [a, [n, "Dolphin"]],
172
- [
173
- /coast\/([\w\.]+)/i
174
- // Opera Coast
175
- ],
176
- [a, [n, R + " Coast"]],
177
- [
178
- /miuibrowser\/([\w\.]+)/i
179
- // MIUI Browser
180
- ],
181
- [a, [n, "MIUI " + A]],
182
- [
183
- /fxios\/([-\w\.]+)/i
184
- // Firefox for iOS
185
- ],
186
- [a, [n, Y]],
187
- [
188
- /\bqihu|(qi?ho?o?|360)browser/i
189
- // 360
190
- ],
191
- [[n, "360 " + A]],
192
- [
193
- /(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i
194
- ],
195
- [[n, /(.+)/, "$1 " + A], a],
196
- [
197
- // Oculus/Samsung/Sailfish/Huawei Browser
198
- /(comodo_dragon)\/([\w\.]+)/i
199
- // Comodo Dragon
200
- ],
201
- [[n, /_/g, " "], a],
202
- [
203
- /(electron)\/([\w\.]+) safari/i,
204
- // Electron-based App
205
- /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
206
- // Tesla
207
- /m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i
208
- // QQBrowser/Baidu App/2345 Browser
209
- ],
210
- [n, a],
211
- [
212
- /(metasr)[\/ ]?([\w\.]+)/i,
213
- // SouGouBrowser
214
- /(lbbrowser)/i,
215
- // LieBao Browser
216
- /\[(linkedin)app\]/i
217
- // LinkedIn App for iOS & Android
218
- ],
219
- [n],
220
- [
221
- // WebView
222
- /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
223
- // Facebook App for iOS & Android
224
- ],
225
- [[n, bi], a],
226
- [
227
- /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
228
- // Kakao App
229
- /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
230
- // Naver InApp
231
- /safari (line)\/([\w\.]+)/i,
232
- // Line App for iOS
233
- /\b(line)\/([\w\.]+)\/iab/i,
234
- // Line App for Android
235
- /(chromium|instagram)[\/ ]([-\w\.]+)/i
236
- // Chromium/Instagram
237
- ],
238
- [n, a],
239
- [
240
- /\bgsa\/([\w\.]+) .*safari\//i
241
- // Google Search Appliance on iOS
242
- ],
243
- [a, [n, "GSA"]],
244
- [
245
- /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i
246
- // TikTok
247
- ],
248
- [a, [n, "TikTok"]],
249
- [
250
- /headlesschrome(?:\/([\w\.]+)| )/i
251
- // Chrome Headless
252
- ],
253
- [a, [n, U + " Headless"]],
254
- [
255
- / wv\).+(chrome)\/([\w\.]+)/i
256
- // Chrome WebView
257
- ],
258
- [[n, U + " WebView"], a],
259
- [
260
- /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
261
- // Android Browser
262
- ],
263
- [a, [n, "Android " + A]],
264
- [
265
- /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
266
- // Chrome/OmniWeb/Arora/Tizen/Nokia
267
- ],
268
- [n, a],
269
- [
270
- /version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i
271
- // Mobile Safari
272
- ],
273
- [a, [n, "Mobile Safari"]],
274
- [
275
- /version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i
276
- // Safari & Safari Mobile
277
- ],
278
- [a, n],
279
- [
280
- /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
281
- // Safari < 3.0
282
- ],
283
- [n, [a, oi, Ei]],
284
- [
285
- /(webkit|khtml)\/([\w\.]+)/i
286
- ],
287
- [n, a],
288
- [
289
- // Gecko based
290
- /(navigator|netscape\d?)\/([-\w\.]+)/i
291
- // Netscape
292
- ],
293
- [[n, "Netscape"], a],
294
- [
295
- /mobile vr; rv:([\w\.]+)\).+firefox/i
296
- // Firefox Reality
297
- ],
298
- [a, [n, Y + " Reality"]],
299
- [
300
- /ekiohf.+(flow)\/([\w\.]+)/i,
301
- // Flow
302
- /(swiftfox)/i,
303
- // Swiftfox
304
- /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,
305
- // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar
306
- /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
307
- // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
308
- /(firefox)\/([\w\.]+)/i,
309
- // Other Firefox-based
310
- /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,
311
- // Mozilla
312
- // Other
313
- /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
314
- // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser
315
- /(links) \(([\w\.]+)/i,
316
- // Links
317
- /panasonic;(viera)/i
318
- // Panasonic Viera
319
- ],
320
- [n, a],
321
- [
322
- /(cobalt)\/([\w\.]+)/i
323
- // Cobalt
324
- ],
325
- [n, [a, /master.|lts./, ""]]
326
- ],
327
- cpu: [
328
- [
329
- /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i
330
- // AMD64 (x64)
331
- ],
332
- [[O, "amd64"]],
333
- [
334
- /(ia32(?=;))/i
335
- // IA32 (quicktime)
336
- ],
337
- [[O, v]],
338
- [
339
- /((?:i[346]|x)86)[;\)]/i
340
- // IA32 (x86)
341
- ],
342
- [[O, "ia32"]],
343
- [
344
- /\b(aarch64|arm(v?8e?l?|_?64))\b/i
345
- // ARM64
346
- ],
347
- [[O, "arm64"]],
348
- [
349
- /\b(arm(?:v[67])?ht?n?[fl]p?)\b/i
350
- // ARMHF
351
- ],
352
- [[O, "armhf"]],
353
- [
354
- // PocketPC mistakenly identified as PowerPC
355
- /windows (ce|mobile); ppc;/i
356
- ],
357
- [[O, "arm"]],
358
- [
359
- /((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i
360
- // PowerPC
361
- ],
362
- [[O, /ower/, E, v]],
363
- [
364
- /(sun4\w)[;\)]/i
365
- // SPARC
366
- ],
367
- [[O, "sparc"]],
368
- [
369
- /((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i
370
- // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
371
- ],
372
- [[O, v]]
373
- ],
374
- device: [
375
- [
376
- //////////////////////////
377
- // MOBILES & TABLETS
378
- /////////////////////////
379
- // Samsung
380
- /\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
381
- ],
382
- [e, [t, $], [i, N]],
383
- [
384
- /\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
385
- /samsung[- ]([-\w]+)/i,
386
- /sec-(sgh\w+)/i
387
- ],
388
- [e, [t, $], [i, b]],
389
- [
390
- // Apple
391
- /(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i
392
- // iPod/iPhone
393
- ],
394
- [e, [t, f], [i, b]],
395
- [
396
- /\((ipad);[-\w\),; ]+apple/i,
397
- // iPad
398
- /applecoremedia\/[\w\.]+ \((ipad)/i,
399
- /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
400
- ],
401
- [e, [t, f], [i, N]],
402
- [
403
- /(macintosh);/i
404
- ],
405
- [e, [t, f]],
406
- [
407
- // Sharp
408
- /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
409
- ],
410
- [e, [t, Ni], [i, b]],
411
- [
412
- // Huawei
413
- /\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i
414
- ],
415
- [e, [t, ci], [i, N]],
416
- [
417
- /(?:huawei|honor)([-\w ]+)[;\)]/i,
418
- /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i
419
- ],
420
- [e, [t, ci], [i, b]],
421
- [
422
- // Xiaomi
423
- /\b(poco[\w ]+)(?: bui|\))/i,
424
- // Xiaomi POCO
425
- /\b; (\w+) build\/hm\1/i,
426
- // Xiaomi Hongmi 'numeric' models
427
- /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
428
- // Xiaomi Hongmi
429
- /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
430
- // Xiaomi Redmi
431
- /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i
432
- // Xiaomi Mi
433
- ],
434
- [[e, /_/g, " "], [t, ii], [i, b]],
435
- [
436
- /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i
437
- // Mi Pad tablets
438
- ],
439
- [[e, /_/g, " "], [t, ii], [i, N]],
440
- [
441
- // OPPO
442
- /; (\w+) bui.+ oppo/i,
443
- /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
444
- ],
445
- [e, [t, "OPPO"], [i, b]],
446
- [
447
- // Vivo
448
- /vivo (\w+)(?: bui|\))/i,
449
- /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
450
- ],
451
- [e, [t, "Vivo"], [i, b]],
452
- [
453
- // Realme
454
- /\b(rmx[12]\d{3})(?: bui|;|\))/i
455
- ],
456
- [e, [t, "Realme"], [i, b]],
457
- [
458
- // Motorola
459
- /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
460
- /\bmot(?:orola)?[- ](\w*)/i,
461
- /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
462
- ],
463
- [e, [t, ui], [i, b]],
464
- [
465
- /\b(mz60\d|xoom[2 ]{0,2}) build\//i
466
- ],
467
- [e, [t, ui], [i, N]],
468
- [
469
- // LG
470
- /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
471
- ],
472
- [e, [t, X], [i, N]],
473
- [
474
- /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
475
- /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,
476
- /\blg-?([\d\w]+) bui/i
477
- ],
478
- [e, [t, X], [i, b]],
479
- [
480
- // Lenovo
481
- /(ideatab[-\w ]+)/i,
482
- /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i
483
- ],
484
- [e, [t, "Lenovo"], [i, N]],
485
- [
486
- // Nokia
487
- /(?:maemo|nokia).*(n900|lumia \d+)/i,
488
- /nokia[-_ ]?([-\w\.]*)/i
489
- ],
490
- [[e, /_/g, " "], [t, "Nokia"], [i, b]],
491
- [
492
- // Google
493
- /(pixel c)\b/i
494
- // Google Pixel C
495
- ],
496
- [e, [t, Q], [i, N]],
497
- [
498
- /droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i
499
- // Google Pixel
500
- ],
501
- [e, [t, Q], [i, b]],
502
- [
503
- // Sony
504
- /droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
505
- ],
506
- [e, [t, Z], [i, b]],
507
- [
508
- /sony tablet [ps]/i,
509
- /\b(?:sony)?sgp\w+(?: bui|\))/i
510
- ],
511
- [[e, "Xperia Tablet"], [t, Z], [i, N]],
512
- [
513
- // OnePlus
514
- / (kb2005|in20[12]5|be20[12][59])\b/i,
515
- /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
516
- ],
517
- [e, [t, "OnePlus"], [i, b]],
518
- [
519
- // Amazon
520
- /(alexa)webm/i,
521
- /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,
522
- // Kindle Fire without Silk / Echo Show
523
- /(kf[a-z]+)( bui|\)).+silk\//i
524
- // Kindle Fire HD
525
- ],
526
- [e, [t, _], [i, N]],
527
- [
528
- /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
529
- // Fire Phone
530
- ],
531
- [[e, /(.+)/g, "Fire Phone $1"], [t, _], [i, b]],
532
- [
533
- // BlackBerry
534
- /(playbook);[-\w\),; ]+(rim)/i
535
- // BlackBerry PlayBook
536
- ],
537
- [e, t, [i, N]],
538
- [
539
- /\b((?:bb[a-f]|st[hv])100-\d)/i,
540
- /\(bb10; (\w+)/i
541
- // BlackBerry 10
542
- ],
543
- [e, [t, Mi], [i, b]],
544
- [
545
- // Asus
546
- /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
547
- ],
548
- [e, [t, ri], [i, N]],
549
- [
550
- / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
551
- ],
552
- [e, [t, ri], [i, b]],
553
- [
554
- // HTC
555
- /(nexus 9)/i
556
- // HTC Nexus 9
557
- ],
558
- [e, [t, "HTC"], [i, N]],
559
- [
560
- /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
561
- // HTC
562
- // ZTE
563
- /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
564
- /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
565
- // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
566
- ],
567
- [t, [e, /_/g, " "], [i, b]],
568
- [
569
- // Acer
570
- /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
571
- ],
572
- [e, [t, "Acer"], [i, N]],
573
- [
574
- // Meizu
575
- /droid.+; (m[1-5] note) bui/i,
576
- /\bmz-([-\w]{2,})/i
577
- ],
578
- [e, [t, "Meizu"], [i, b]],
579
- [
580
- // MIXED
581
- /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,
582
- // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
583
- /(hp) ([\w ]+\w)/i,
584
- // HP iPAQ
585
- /(asus)-?(\w+)/i,
586
- // Asus
587
- /(microsoft); (lumia[\w ]+)/i,
588
- // Microsoft Lumia
589
- /(lenovo)[-_ ]?([-\w]+)/i,
590
- // Lenovo
591
- /(jolla)/i,
592
- // Jolla
593
- /(oppo) ?([\w ]+) bui/i
594
- // OPPO
595
- ],
596
- [t, e, [i, b]],
597
- [
598
- /(kobo)\s(ereader|touch)/i,
599
- // Kobo
600
- /(archos) (gamepad2?)/i,
601
- // Archos
602
- /(hp).+(touchpad(?!.+tablet)|tablet)/i,
603
- // HP TouchPad
604
- /(kindle)\/([\w\.]+)/i,
605
- // Kindle
606
- /(nook)[\w ]+build\/(\w+)/i,
607
- // Nook
608
- /(dell) (strea[kpr\d ]*[\dko])/i,
609
- // Dell Streak
610
- /(le[- ]+pan)[- ]+(\w{1,9}) bui/i,
611
- // Le Pan Tablets
612
- /(trinity)[- ]*(t\d{3}) bui/i,
613
- // Trinity Tablets
614
- /(gigaset)[- ]+(q\w{1,9}) bui/i,
615
- // Gigaset Tablets
616
- /(vodafone) ([\w ]+)(?:\)| bui)/i
617
- // Vodafone
618
- ],
619
- [t, e, [i, N]],
620
- [
621
- /(surface duo)/i
622
- // Surface Duo
623
- ],
624
- [e, [t, F], [i, N]],
625
- [
626
- /droid [\d\.]+; (fp\du?)(?: b|\))/i
627
- // Fairphone
628
- ],
629
- [e, [t, "Fairphone"], [i, b]],
630
- [
631
- /(u304aa)/i
632
- // AT&T
633
- ],
634
- [e, [t, "AT&T"], [i, b]],
635
- [
636
- /\bsie-(\w*)/i
637
- // Siemens
638
- ],
639
- [e, [t, "Siemens"], [i, b]],
640
- [
641
- /\b(rct\w+) b/i
642
- // RCA Tablets
643
- ],
644
- [e, [t, "RCA"], [i, N]],
645
- [
646
- /\b(venue[\d ]{2,7}) b/i
647
- // Dell Venue Tablets
648
- ],
649
- [e, [t, "Dell"], [i, N]],
650
- [
651
- /\b(q(?:mv|ta)\w+) b/i
652
- // Verizon Tablet
653
- ],
654
- [e, [t, "Verizon"], [i, N]],
655
- [
656
- /\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i
657
- // Barnes & Noble Tablet
658
- ],
659
- [e, [t, "Barnes & Noble"], [i, N]],
660
- [
661
- /\b(tm\d{3}\w+) b/i
662
- ],
663
- [e, [t, "NuVision"], [i, N]],
664
- [
665
- /\b(k88) b/i
666
- // ZTE K Series Tablet
667
- ],
668
- [e, [t, "ZTE"], [i, N]],
669
- [
670
- /\b(nx\d{3}j) b/i
671
- // ZTE Nubia
672
- ],
673
- [e, [t, "ZTE"], [i, b]],
674
- [
675
- /\b(gen\d{3}) b.+49h/i
676
- // Swiss GEN Mobile
677
- ],
678
- [e, [t, "Swiss"], [i, b]],
679
- [
680
- /\b(zur\d{3}) b/i
681
- // Swiss ZUR Tablet
682
- ],
683
- [e, [t, "Swiss"], [i, N]],
684
- [
685
- /\b((zeki)?tb.*\b) b/i
686
- // Zeki Tablets
687
- ],
688
- [e, [t, "Zeki"], [i, N]],
689
- [
690
- /\b([yr]\d{2}) b/i,
691
- /\b(dragon[- ]+touch |dt)(\w{5}) b/i
692
- // Dragon Touch Tablet
693
- ],
694
- [[t, "Dragon Touch"], e, [i, N]],
695
- [
696
- /\b(ns-?\w{0,9}) b/i
697
- // Insignia Tablets
698
- ],
699
- [e, [t, "Insignia"], [i, N]],
700
- [
701
- /\b((nxa|next)-?\w{0,9}) b/i
702
- // NextBook Tablets
703
- ],
704
- [e, [t, "NextBook"], [i, N]],
705
- [
706
- /\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i
707
- // Voice Xtreme Phones
708
- ],
709
- [[t, "Voice"], e, [i, b]],
710
- [
711
- /\b(lvtel\-)?(v1[12]) b/i
712
- // LvTel Phones
713
- ],
714
- [[t, "LvTel"], e, [i, b]],
715
- [
716
- /\b(ph-1) /i
717
- // Essential PH-1
718
- ],
719
- [e, [t, "Essential"], [i, b]],
720
- [
721
- /\b(v(100md|700na|7011|917g).*\b) b/i
722
- // Envizen Tablets
723
- ],
724
- [e, [t, "Envizen"], [i, N]],
725
- [
726
- /\b(trio[-\w\. ]+) b/i
727
- // MachSpeed Tablets
728
- ],
729
- [e, [t, "MachSpeed"], [i, N]],
730
- [
731
- /\btu_(1491) b/i
732
- // Rotor Tablets
733
- ],
734
- [e, [t, "Rotor"], [i, N]],
735
- [
736
- /(shield[\w ]+) b/i
737
- // Nvidia Shield Tablets
738
- ],
739
- [e, [t, "Nvidia"], [i, N]],
740
- [
741
- /(sprint) (\w+)/i
742
- // Sprint Phones
743
- ],
744
- [t, e, [i, b]],
745
- [
746
- /(kin\.[onetw]{3})/i
747
- // Microsoft Kin
748
- ],
749
- [[e, /\./g, " "], [t, F], [i, b]],
750
- [
751
- /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
752
- // Zebra
753
- ],
754
- [e, [t, ei], [i, N]],
755
- [
756
- /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
757
- ],
758
- [e, [t, ei], [i, b]],
759
- [
760
- ///////////////////
761
- // SMARTTVS
762
- ///////////////////
763
- /smart-tv.+(samsung)/i
764
- // Samsung
765
- ],
766
- [t, [i, d]],
767
- [
768
- /hbbtv.+maple;(\d+)/i
769
- ],
770
- [[e, /^/, "SmartTV"], [t, $], [i, d]],
771
- [
772
- /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
773
- // LG SmartTV
774
- ],
775
- [[t, X], [i, d]],
776
- [
777
- /(apple) ?tv/i
778
- // Apple TV
779
- ],
780
- [t, [e, f + " TV"], [i, d]],
781
- [
782
- /crkey/i
783
- // Google Chromecast
784
- ],
785
- [[e, U + "cast"], [t, Q], [i, d]],
786
- [
787
- /droid.+aft(\w)( bui|\))/i
788
- // Fire TV
789
- ],
790
- [e, [t, _], [i, d]],
791
- [
792
- /\(dtv[\);].+(aquos)/i,
793
- /(aquos-tv[\w ]+)\)/i
794
- // Sharp
795
- ],
796
- [e, [t, Ni], [i, d]],
797
- [
798
- /(bravia[\w ]+)( bui|\))/i
799
- // Sony
800
- ],
801
- [e, [t, Z], [i, d]],
802
- [
803
- /(mitv-\w{5}) bui/i
804
- // Xiaomi
805
- ],
806
- [e, [t, ii], [i, d]],
807
- [
808
- /Hbbtv.*(technisat) (.*);/i
809
- // TechniSAT
810
- ],
811
- [t, e, [i, d]],
812
- [
813
- /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
814
- // Roku
815
- /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
816
- // HbbTV devices
817
- ],
818
- [[t, ti], [e, ti], [i, d]],
819
- [
820
- /\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i
821
- // SmartTV from Unidentified Vendors
822
- ],
823
- [[i, d]],
824
- [
825
- ///////////////////
826
- // CONSOLES
827
- ///////////////////
828
- /(ouya)/i,
829
- // Ouya
830
- /(nintendo) ([wids3utch]+)/i
831
- // Nintendo
832
- ],
833
- [t, e, [i, S]],
834
- [
835
- /droid.+; (shield) bui/i
836
- // Nvidia
837
- ],
838
- [e, [t, "Nvidia"], [i, S]],
839
- [
840
- /(playstation [345portablevi]+)/i
841
- // Playstation
842
- ],
843
- [e, [t, Z], [i, S]],
844
- [
845
- /\b(xbox(?: one)?(?!; xbox))[\); ]/i
846
- // Microsoft Xbox
847
- ],
848
- [e, [t, F], [i, S]],
849
- [
850
- ///////////////////
851
- // WEARABLES
852
- ///////////////////
853
- /((pebble))app/i
854
- // Pebble
855
- ],
856
- [t, e, [i, j]],
857
- [
858
- /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
859
- // Apple Watch
860
- ],
861
- [e, [t, f], [i, j]],
862
- [
863
- /droid.+; (glass) \d/i
864
- // Google Glass
865
- ],
866
- [e, [t, Q], [i, j]],
867
- [
868
- /droid.+; (wt63?0{2,3})\)/i
869
- ],
870
- [e, [t, ei], [i, j]],
871
- [
872
- /(quest( 2| pro)?)/i
873
- // Oculus Quest
874
- ],
875
- [e, [t, bi], [i, j]],
876
- [
877
- ///////////////////
878
- // EMBEDDED
879
- ///////////////////
880
- /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
881
- // Tesla
882
- ],
883
- [t, [i, q]],
884
- [
885
- /(aeobc)\b/i
886
- // Echo Dot
887
- ],
888
- [e, [t, _], [i, q]],
889
- [
890
- ////////////////////
891
- // MIXED (GENERIC)
892
- ///////////////////
893
- /droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i
894
- // Android Phones from Unidentified Vendors
895
- ],
896
- [e, [i, b]],
897
- [
898
- /droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i
899
- // Android Tablets from Unidentified Vendors
900
- ],
901
- [e, [i, N]],
902
- [
903
- /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i
904
- // Unidentifiable Tablet
905
- ],
906
- [[i, N]],
907
- [
908
- /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
909
- // Unidentifiable Mobile
910
- ],
911
- [[i, b]],
912
- [
913
- /(android[-\w\. ]{0,9});.+buil/i
914
- // Generic Android Device
915
- ],
916
- [e, [t, "Generic"]]
917
- ],
918
- engine: [
919
- [
920
- /windows.+ edge\/([\w\.]+)/i
921
- // EdgeHTML
922
- ],
923
- [a, [n, pi + "HTML"]],
924
- [
925
- /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
926
- // Blink
927
- ],
928
- [a, [n, "Blink"]],
929
- [
930
- /(presto)\/([\w\.]+)/i,
931
- // Presto
932
- /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,
933
- // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna
934
- /ekioh(flow)\/([\w\.]+)/i,
935
- // Flow
936
- /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
937
- // KHTML/Tasman/Links
938
- /(icab)[\/ ]([23]\.[\d\.]+)/i,
939
- // iCab
940
- /\b(libweb)/i
941
- ],
942
- [n, a],
943
- [
944
- /rv\:([\w\.]{1,9})\b.+(gecko)/i
945
- // Gecko
946
- ],
947
- [a, n]
948
- ],
949
- os: [
950
- [
951
- // Windows
952
- /microsoft (windows) (vista|xp)/i
953
- // Windows (iTunes)
954
- ],
955
- [n, a],
956
- [
957
- /(windows) nt 6\.2; (arm)/i,
958
- // Windows RT
959
- /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,
960
- // Windows Phone
961
- /(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i
962
- ],
963
- [n, [a, oi, Ii]],
964
- [
965
- /(win(?=3|9|n)|win 9x )([nt\d\.]+)/i
966
- ],
967
- [[n, "Windows"], [a, oi, Ii]],
968
- [
969
- // iOS/macOS
970
- /ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,
971
- // iOS
972
- /ios;fbsv\/([\d\.]+)/i,
973
- /cfnetwork\/.+darwin/i
974
- ],
975
- [[a, /_/g, "."], [n, "iOS"]],
976
- [
977
- /(mac os x) ?([\w\. ]*)/i,
978
- /(macintosh|mac_powerpc\b)(?!.+haiku)/i
979
- // Mac OS
980
- ],
981
- [[n, gi], [a, /_/g, "."]],
982
- [
983
- // Mobile OSes
984
- /droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i
985
- // Android-x86/HarmonyOS
986
- ],
987
- [a, n],
988
- [
989
- // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS
990
- /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,
991
- /(blackberry)\w*\/([\w\.]*)/i,
992
- // Blackberry
993
- /(tizen|kaios)[\/ ]([\w\.]+)/i,
994
- // Tizen/KaiOS
995
- /\((series40);/i
996
- // Series 40
997
- ],
998
- [n, a],
999
- [
1000
- /\(bb(10);/i
1001
- // BlackBerry 10
1002
- ],
1003
- [a, [n, Mi]],
1004
- [
1005
- /(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i
1006
- // Symbian
1007
- ],
1008
- [a, [n, "Symbian"]],
1009
- [
1010
- /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i
1011
- // Firefox OS
1012
- ],
1013
- [a, [n, Y + " OS"]],
1014
- [
1015
- /web0s;.+rt(tv)/i,
1016
- /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i
1017
- // WebOS
1018
- ],
1019
- [a, [n, "webOS"]],
1020
- [
1021
- /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i
1022
- // watchOS
1023
- ],
1024
- [a, [n, "watchOS"]],
1025
- [
1026
- // Google Chromecast
1027
- /crkey\/([\d\.]+)/i
1028
- // Google Chromecast
1029
- ],
1030
- [a, [n, U + "cast"]],
1031
- [
1032
- /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i
1033
- // Chromium OS
1034
- ],
1035
- [[n, li], a],
1036
- [
1037
- // Smart TVs
1038
- /panasonic;(viera)/i,
1039
- // Panasonic Viera
1040
- /(netrange)mmh/i,
1041
- // Netrange
1042
- /(nettv)\/(\d+\.[\w\.]+)/i,
1043
- // NetTV
1044
- // Console
1045
- /(nintendo|playstation) ([wids345portablevuch]+)/i,
1046
- // Nintendo/Playstation
1047
- /(xbox); +xbox ([^\);]+)/i,
1048
- // Microsoft Xbox (360, One, X, S, Series X, Series S)
1049
- // Other
1050
- /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
1051
- // Joli/Palm
1052
- /(mint)[\/\(\) ]?(\w*)/i,
1053
- // Mint
1054
- /(mageia|vectorlinux)[; ]/i,
1055
- // Mageia/VectorLinux
1056
- /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
1057
- // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire
1058
- /(hurd|linux) ?([\w\.]*)/i,
1059
- // Hurd/Linux
1060
- /(gnu) ?([\w\.]*)/i,
1061
- // GNU
1062
- /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
1063
- // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
1064
- /(haiku) (\w+)/i
1065
- // Haiku
1066
- ],
1067
- [n, a],
1068
- [
1069
- /(sunos) ?([\w\.\d]*)/i
1070
- // Solaris
1071
- ],
1072
- [[n, "Solaris"], a],
1073
- [
1074
- /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
1075
- // Solaris
1076
- /(aix) ((\d)(?=\.|\)| )[\w\.])*/i,
1077
- // AIX
1078
- /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,
1079
- // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS
1080
- /(unix) ?([\w\.]*)/i
1081
- // UNIX
1082
- ],
1083
- [n, a]
1084
- ]
1085
- }, m = function(l, I) {
1086
- if (typeof l === H && (I = l, l = g), !(this instanceof m))
1087
- return new m(l, I).getResult();
1088
- var u = typeof M !== C && M.navigator ? M.navigator : g, D = l || (u && u.userAgent ? u.userAgent : E), y = u && u.userAgentData ? u.userAgentData : g, p = I ? hi(Di, I) : Di, w = u && u.userAgent == D;
1089
- return this.getBrowser = function() {
1090
- var r = {};
1091
- return r[n] = g, r[a] = g, k.call(r, D, p.browser), r[si] = yi(r[a]), w && u && u.brave && typeof u.brave.isBrave == W && (r[n] = "Brave"), r;
1092
- }, this.getCPU = function() {
1093
- var r = {};
1094
- return r[O] = g, k.call(r, D, p.cpu), r;
1095
- }, this.getDevice = function() {
1096
- var r = {};
1097
- return r[t] = g, r[e] = g, r[i] = g, k.call(r, D, p.device), w && !r[i] && y && y.mobile && (r[i] = b), w && r[e] == "Macintosh" && u && typeof u.standalone !== C && u.maxTouchPoints && u.maxTouchPoints > 2 && (r[e] = "iPad", r[i] = N), r;
1098
- }, this.getEngine = function() {
1099
- var r = {};
1100
- return r[n] = g, r[a] = g, k.call(r, D, p.engine), r;
1101
- }, this.getOS = function() {
1102
- var r = {};
1103
- return r[n] = g, r[a] = g, k.call(r, D, p.os), w && !r[n] && y && y.platform != "Unknown" && (r[n] = y.platform.replace(/chrome os/i, li).replace(/macos/i, gi)), r;
1104
- }, this.getResult = function() {
1105
- return {
1106
- ua: this.getUA(),
1107
- browser: this.getBrowser(),
1108
- engine: this.getEngine(),
1109
- os: this.getOS(),
1110
- device: this.getDevice(),
1111
- cpu: this.getCPU()
1112
- };
1113
- }, this.getUA = function() {
1114
- return D;
1115
- }, this.setUA = function(r) {
1116
- return D = typeof r === P && r.length > J ? ti(r, J) : r, this;
1117
- }, this.setUA(D), this;
1118
- };
1119
- m.VERSION = T, m.BROWSER = G([n, a, si]), m.CPU = G([O]), m.DEVICE = G([e, t, i, S, b, d, N, j, q]), m.ENGINE = m.OS = G([n, a]), o.exports && (s = o.exports = m), s.UAParser = m;
1120
- var z = typeof M !== C && (M.jQuery || M.Zepto);
1121
- if (z && !z.ua) {
1122
- var K = new m();
1123
- z.ua = K.getResult(), z.ua.get = function() {
1124
- return K.getUA();
1125
- }, z.ua.set = function(l) {
1126
- K.setUA(l);
1127
- var I = K.getResult();
1128
- for (var u in I)
1129
- z.ua[u] = I[u];
1130
- };
1131
- }
1132
- })(typeof window == "object" ? window : xi);
1133
- }), fi = function(s) {
1134
- return vi(s) && !ki(s);
1135
- };
1136
- function vi(o) {
1137
- return !!o && typeof o == "object";
1138
- }
1139
- function ki(o) {
1140
- var s = Object.prototype.toString.call(o);
1141
- return s === "[object RegExp]" || s === "[object Date]" || Pi(o);
1142
- }
1143
- var Li = typeof Symbol == "function" && Symbol.for, Ci = Li ? Symbol.for("react.element") : 60103;
1144
- function Pi(o) {
1145
- return o.$$typeof === Ci;
1146
- }
1147
- function _i(o) {
1148
- return Array.isArray(o) ? [] : {};
1149
- }
1150
- function L(o, s) {
1151
- return s.clone !== !1 && s.isMergeableObject(o) ? x(_i(o), o, s) : o;
1152
- }
1153
- function Ui(o, s, M) {
1154
- return o.concat(s).map(function(g) {
1155
- return L(g, M);
1156
- });
1157
- }
1158
- function Yi(o, s) {
1159
- if (!s.customMerge)
1160
- return x;
1161
- var M = s.customMerge(o);
1162
- return typeof M == "function" ? M : x;
1163
- }
1164
- function Qi(o) {
1165
- return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(o).filter(function(s) {
1166
- return Object.propertyIsEnumerable.call(o, s);
1167
- }) : [];
1168
- }
1169
- function Oi(o) {
1170
- return Object.keys(o).concat(Qi(o));
1171
- }
1172
- function mi(o, s) {
1173
- try {
1174
- return s in o;
1175
- } catch {
1176
- return !1;
1177
- }
1178
- }
1179
- function Ri(o, s) {
1180
- return mi(o, s) && !(Object.hasOwnProperty.call(o, s) && Object.propertyIsEnumerable.call(o, s));
1181
- }
1182
- function Zi(o, s, M) {
1183
- var g = {};
1184
- return M.isMergeableObject(o) && Oi(o).forEach(function(T) {
1185
- g[T] = L(o[T], M);
1186
- }), Oi(s).forEach(function(T) {
1187
- Ri(o, T) || (mi(o, T) && M.isMergeableObject(s[T]) ? g[T] = Yi(T, M)(o[T], s[T], M) : g[T] = L(s[T], M));
1188
- }), g;
1189
- }
1190
- function x(o, s, M) {
1191
- M = M || {}, M.arrayMerge = M.arrayMerge || Ui, M.isMergeableObject = M.isMergeableObject || fi, M.cloneUnlessOtherwiseSpecified = L;
1192
- var g = Array.isArray(s), T = Array.isArray(o), E = g === T;
1193
- return E ? g ? M.arrayMerge(o, s, M) : Zi(o, s, M) : L(s, M);
1194
- }
1195
- x.all = function(s, M) {
1196
- if (!Array.isArray(s))
1197
- throw new Error("first argument should be an array");
1198
- return s.reduce(function(g, T) {
1199
- return x(g, T, M);
1200
- }, {});
1201
- };
1202
- var Gi = x, Ki = Gi;
1203
- const Vi = ".mi-my-position{margin:10px;display:flex;flex-direction:column;pointer-events:auto;gap:16px;right:0}.mi-my-position__position-button,.mi-my-position__compass-button{margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:48px;height:48px;background-repeat:no-repeat;background-position:center;outline:none;border-color:#e5e7eb;border-style:solid;background-color:#fcfcfc}.mi-my-position__position-button{background-size:23px;border-radius:8px}.mi-my-position__position-button--unknown{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zLjY1NTIzIDEuMjIzNTZDMy4yNjQ3IDAuODMzMDMzIDIuNjMxNTQgMC44MzMwMzMgMi4yNDEwMSAxLjIyMzU2QzEuODUwNDkgMS42MTQwOCAxLjg1MDQ5IDIuMjQ3MjUgMi4yNDEwMSAyLjYzNzc3TDIyLjI2NiAyMi42NjI4QzIyLjY1NjUgMjMuMDUzMyAyMy4yODk3IDIzLjA1MzMgMjMuNjgwMiAyMi42NjI4QzI0LjA3MDcgMjIuMjcyMiAyNC4wNzA3IDIxLjYzOTEgMjMuNjgwMiAyMS4yNDg1TDE3LjcxNTcgMTUuMjg0MUwyMC43NzQ4IDcuMzYzMjVDMjEuNTYyOSA1LjMyMzE1IDE5LjU1NjIgMy4zMTY2NiAxNy41MTYyIDQuMTA0NTVMOS41OTUzNSA3LjE2MzY4TDMuNjU1MjMgMS4yMjM1NlpNMTEuMTQyIDguNzEwMzJMMTYuMTY5MSAxMy43Mzc0TDE4LjkwOTIgNi42NDI2MUMxOS4wNzE4IDYuMjIxNzIgMTguNjU3OCA1LjgwNzY0IDE4LjIzNjggNS45NzAyNEwxMS4xNDIgOC43MTAzMloiIGZpbGw9IiM3MzczNzMiLz4KPHBhdGggZD0iTTEzLjI1MTggMjEuMjkxMkwxNC45OTIxIDE2Ljc4NDlMMTYuNTM4OCAxOC4zMzE1TDE1LjExNzQgMjIuMDExOEMxNC4wNjc3IDI0LjcyOTYgMTAuMTUwOCAyNC41MDY5IDkuNDE1OTMgMjEuNjg3Nkw4LjEyOTA1IDE2Ljc1MDVMMy4xOTE4IDE1LjQ2MzZDMC4zNzI1MSAxNC43Mjg3IDAuMTQ5ODEyIDEwLjgxMTcgMi44Njc2NCA5Ljc2Mkw2LjY0NTEyIDguMzAzMDlMOC4xOTE3NyA5Ljg0OTc0TDMuNTg4MTkgMTEuNjI3N0MyLjY4MjI0IDExLjk3NzYgMi43NTY0OCAxMy4yODMzIDMuNjk2MjUgMTMuNTI4Mkw4LjYzMzUgMTQuODE1MUM5LjMzNDQzIDE0Ljk5NzggOS44ODE3OCAxNS41NDUyIDEwLjA2NDQgMTYuMjQ2TDExLjM1MTMgMjEuMTgzMkMxMS41OTYyIDIyLjEyMjkgMTIuOTAxOSAyMi4xOTcyIDEzLjI1MTggMjEuMjkxMloiIGZpbGw9IiM3MzczNzMiLz4KPC9zdmc+Cg==)}.mi-my-position__position-button--requesting{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAxOSAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuODkzNDEgMTEuMjgzTDEuOTU2MTYgOS45OTYxMUMwLjA3NjYyOTIgOS41MDYyIC0wLjA3MTg0MTEgNi44OTQ4NSAxLjc0MDA1IDYuMTk1MDdMMTYuMzg4NiAwLjUzNzYxN0MxNy42MTkxIDAuMDYyMzc2NiAxOC44Mjk0IDEuMjcyNjYgMTguMzU0MSAyLjUwMzE2TDEyLjY5NjcgMTcuMTUxN0MxMS45OTY5IDE4Ljk2MzYgOS4zODU2NCAxOC44MTUxIDguODk1NzQgMTYuOTM1Nkw3LjYwODg0IDExLjk5ODRDNy41MTc1NCAxMS42NDggNy4yNDM4NiAxMS4zNzQzIDYuODkzNDEgMTEuMjgzWiIgZmlsbD0iIzczNzM3MyIvPgo8L3N2Zz4K)}.mi-my-position__position-button--known{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAxOSAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuODkzNDEgMTEuMjgzTDEuOTU2MTYgOS45OTYxMUMwLjA3NjYyOTIgOS41MDYyIC0wLjA3MTg0MTEgNi44OTQ4NSAxLjc0MDA1IDYuMTk1MDdMMTYuMzg4NiAwLjUzNzYxN0MxNy42MTkxIDAuMDYyMzc2NiAxOC44Mjk0IDEuMjcyNjYgMTguMzU0MSAyLjUwMzE2TDEyLjY5NjcgMTcuMTUxN0MxMS45OTY5IDE4Ljk2MzYgOS4zODU2NCAxOC44MTUxIDguODk1NzQgMTYuOTM1Nkw3LjYwODg0IDExLjk5ODRDNy41MTc1NCAxMS42NDggNy4yNDM4NiAxMS4zNzQzIDYuODkzNDEgMTEuMjgzWiIgZmlsbD0iIzczNzM3MyIvPgo8L3N2Zz4K)}.mi-my-position__position-button--centered{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAxOSAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuODkzNDEgMTEuMjgzTDEuOTU2MTYgOS45OTYxMUMwLjA3NjYyOTIgOS41MDYyIC0wLjA3MTg0MTEgNi44OTQ4NSAxLjc0MDA1IDYuMTk1MDdMMTYuMzg4NiAwLjUzNzYxN0MxNy42MTkxIDAuMDYyMzc2NiAxOC44Mjk0IDEuMjcyNjYgMTguMzU0MSAyLjUwMzE2TDEyLjY5NjcgMTcuMTUxN0MxMS45OTY5IDE4Ljk2MzYgOS4zODU2NCAxOC44MTUxIDguODk1NzQgMTYuOTM1Nkw3LjYwODg0IDExLjk5ODRDNy41MTc1NCAxMS42NDggNy4yNDM4NiAxMS4zNzQzIDYuODkzNDEgMTEuMjgzWiIgZmlsbD0iIzI1NjNFQiIvPgo8L3N2Zz4K)}.mi-my-position__position-button--tracked{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNSAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyLjQ2MDQgMTMuNDMwOUMxMy4wMTI3IDEzLjQzMDkgMTMuNDYwNCAxMi45ODMyIDEzLjQ2MDQgMTIuNDMwOUMxMy40NjA0IDExLjg3ODYgMTMuMDEyNyAxMS40MzA5IDEyLjQ2MDQgMTEuNDMwOUMxMS45MDgxIDExLjQzMDkgMTEuNDYwNCAxMS44Nzg2IDExLjQ2MDQgMTIuNDMwOUMxMS40NjA0IDEyLjk4MzIgMTEuOTA4MSAxMy40MzA5IDEyLjQ2MDQgMTMuNDMwOVoiIGZpbGw9IiMyNTYzRUIiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMi40NjA0IDEyLjQzMDlDMjIuNDYwNCAxNy45NTM3IDE3Ljk4MzIgMjIuNDMwOSAxMi40NjA0IDIyLjQzMDlDNi45Mzc2IDIyLjQzMDkgMi40NjA0NSAxNy45NTM3IDIuNDYwNDUgMTIuNDMwOUMyLjQ2MDQ1IDYuOTA4MDYgNi45Mzc2IDIuNDMwOTEgMTIuNDYwNCAyLjQzMDkxQzE3Ljk4MzIgMi40MzA5MSAyMi40NjA0IDYuOTA4MDYgMjIuNDYwNCAxMi40MzA5Wk0xNS44Mzc5IDguNDQ2MTJMMTAuNTM4OSA5Ljc4NDc4QzEwLjE4MjYgOS44NzQ4IDkuOTA0MzYgMTAuMTUzIDkuODE0MzQgMTAuNTA5NEw4LjQ3NTcyIDE1LjgwODRDOC4zODMgMTYuMTc1NSA4LjcxNTk0IDE2LjUwODQgOS4wODI5NSAxNi40MTU3TDE0LjM4MTkgMTUuMDc3QzE0LjczODMgMTQuOTg3IDE1LjAxNjUgMTQuNzA4OCAxNS4xMDY2IDE0LjM1MjRMMTYuNDQ1MiA5LjA1MzM1QzE2LjUzNzkgOC42ODYzMyAxNi4yMDUgOC4zNTM0IDE1LjgzNzkgOC40NDYxMloiIGZpbGw9IiMyNTYzRUIiLz4KPC9zdmc+Cg==)}.mi-my-position__position-button--untracked{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNSAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyLjQ2MDQgMTMuNDMwOUMxMy4wMTI3IDEzLjQzMDkgMTMuNDYwNCAxMi45ODMyIDEzLjQ2MDQgMTIuNDMwOUMxMy40NjA0IDExLjg3ODYgMTMuMDEyNyAxMS40MzA5IDEyLjQ2MDQgMTEuNDMwOUMxMS45MDgxIDExLjQzMDkgMTEuNDYwNCAxMS44Nzg2IDExLjQ2MDQgMTIuNDMwOUMxMS40NjA0IDEyLjk4MzIgMTEuOTA4MSAxMy40MzA5IDEyLjQ2MDQgMTMuNDMwOVoiIGZpbGw9IiMwMDAwMDAiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMi40NjA0IDEyLjQzMDlDMjIuNDYwNCAxNy45NTM3IDE3Ljk4MzIgMjIuNDMwOSAxMi40NjA0IDIyLjQzMDlDNi45Mzc2IDIyLjQzMDkgMi40NjA0NSAxNy45NTM3IDIuNDYwNDUgMTIuNDMwOUMyLjQ2MDQ1IDYuOTA4MDYgNi45Mzc2IDIuNDMwOTEgMTIuNDYwNCAyLjQzMDkxQzE3Ljk4MzIgMi40MzA5MSAyMi40NjA0IDYuOTA4MDYgMjIuNDYwNCAxMi40MzA5Wk0xNS44Mzc5IDguNDQ2MTJMMTAuNTM4OSA5Ljc4NDc4QzEwLjE4MjYgOS44NzQ4IDkuOTA0MzYgMTAuMTUzIDkuODE0MzQgMTAuNTA5NEw4LjQ3NTcyIDE1LjgwODRDOC4zODMgMTYuMTc1NSA4LjcxNTk0IDE2LjUwODQgOS4wODI5NSAxNi40MTU3TDE0LjM4MTkgMTUuMDc3QzE0LjczODMgMTQuOTg3IDE1LjAxNjUgMTQuNzA4OCAxNS4xMDY2IDE0LjM1MjRMMTYuNDQ1MiA5LjA1MzM1QzE2LjUzNzkgOC42ODYzMyAxNi4yMDUgOC4zNTM0IDE1LjgzNzkgOC40NDYxMloiIGZpbGw9IiMwMDAwMDAiLz4KPC9zdmc+Cg==)}.mi-my-position__compass-button{background-size:12px;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAxMyAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUuNTQ4MTMgMi45NjI0MUM1LjkwMTU5IDIuMTc1MjcgNy4wMTkxNSAyLjE3NTI3IDcuMzcyNjIgMi45NjI0MUwxMS41OTI5IDEyLjM2MDZDMTEuOTQ5MSAxMy4xNTM4IDExLjE5MzEgMTMuOTkyMyAxMC4zNjczIDEzLjcxOTlMNi43NzM2NyAxMi41MzQzQzYuNTcwMiAxMi40NjcxIDYuMzUwNTQgMTIuNDY3MSA2LjE0NzA3IDEyLjUzNDNMMi41NTM0MyAxMy43MTk5QzEuNzI3NjggMTMuOTkyMyAwLjk3MTY4MyAxMy4xNTM4IDEuMzI3ODggMTIuMzYwNkw1LjU0ODEzIDIuOTYyNDFaIiBmaWxsPSIjREMyNjI2Ii8+CjxwYXRoIGQ9Ik03LjM3MjUzIDI3Ljg5OTRDNy4wMTkwNiAyOC42ODY1IDUuOTAxNSAyOC42ODY1IDUuNTQ4MDQgMjcuODk5NEwxLjMyNzc5IDE4LjUwMTJDMC45NzE1OTcgMTcuNzA4IDEuNzI3NTkgMTYuODY5NSAyLjU1MzM0IDE3LjE0Mkw2LjE0Njk4IDE4LjMyNzVDNi4zNTA0NiAxOC4zOTQ3IDYuNTcwMTEgMTguMzk0NyA2Ljc3MzU5IDE4LjMyNzVMMTAuMzY3MiAxNy4xNDJDMTEuMTkzIDE2Ljg2OTUgMTEuOTQ5IDE3LjcwOCAxMS41OTI4IDE4LjUwMTJMNy4zNzI1MyAyNy44OTk0WiIgZmlsbD0iIzlDQTNBRiIvPgo8L3N2Zz4K);border-radius:50%}";
1204
- var c;
1205
- (function(o) {
1206
- o.POSITION_UNKNOWN = "POSITION_UNKNOWN", o.POSITION_REQUESTING = "POSITION_REQUESTING", o.POSITION_INACCURATE = "POSITION_INACCURATE", o.POSITION_KNOWN = "POSITION_KNOWN", o.POSITION_CENTERED = "POSITION_CENTERED", o.POSITION_TRACKED = "POSITION_TRACKED", o.POSITION_UNTRACKED = "POSITION_UNTRACKED";
1207
- })(c || (c = {}));
1208
- var B;
1209
- (function(o) {
1210
- o.Phone = "mobile", o.Tablet = "tablet";
1211
- })(B || (B = {}));
1212
- const Bi = class {
1213
- constructor(o) {
1214
- ji(this, o), this.position_error = di(this, "position_error", 7), this.position_received = di(this, "position_received", 7), this.parser = new Si.UAParser(), this.handleDeviceOrientationReference = this.handleDeviceOrientation.bind(this), this.defaultOptions = {
1215
- maxAccuracy: 200,
1216
- positionOptions: {
1217
- timeout: 3e4,
1218
- enableHighAccuracy: !0,
1219
- maximumAge: 0
1220
- },
1221
- positionMarkerStyles: {
1222
- radius: "12px",
1223
- strokeWeight: "2px",
1224
- strokeColor: "white",
1225
- fillColor: "#4169E1",
1226
- fillOpacity: 1
1227
- },
1228
- accuracyCircleStyles: {
1229
- fillColor: "#4169E1",
1230
- fillOpacity: 0.16
1231
- }
1232
- }, this.mapsindoors = void 0, this.myPositionOptions = void 0, this.positionState = void 0;
1233
- }
1234
- /**
1235
- * Removes the event listener for the device's orientation and resets the position button.
1236
- */
1237
- resetPositionState() {
1238
- window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference), this.positionState === c.POSITION_TRACKED ? this.setPositionState(c.POSITION_UNTRACKED) : this.positionState === c.POSITION_CENTERED && (this.setPositionState(c.POSITION_KNOWN), this.mapView.tilt(0));
1239
- }
1240
- /**
1241
- * Returns if position is known and accurate.
1242
- *
1243
- * @returns {boolean}
1244
- */
1245
- hasValidPosition() {
1246
- return [c.POSITION_KNOWN, c.POSITION_CENTERED, c.POSITION_INACCURATE, c.POSITION_TRACKED, c.POSITION_UNTRACKED].includes(this.positionState);
1247
- }
1248
- /**
1249
- * Sets position to unknown and emits error about it.
1250
- *
1251
- * @param {object} error
1252
- */
1253
- setPositionUnknown(o) {
1254
- this.setPositionState(c.POSITION_UNKNOWN), this.position_error.emit(o);
1255
- }
1256
- /**
1257
- * Sets the PositionControl as PositionProvider on the MapView.
1258
- */
1259
- setPositionProviderOnMapView() {
1260
- this.mapView.isReady ? this.mapView.setPositionProvider(this) : this.mapView.once("ready", () => {
1261
- this.mapView.setPositionProvider(this);
1262
- });
1263
- }
1264
- /**
1265
- * Pan map to center on the current position.
1266
- */
1267
- panToCurrentPosition() {
1268
- this.hasValidPosition() && (this.mapView.once("idle", () => {
1269
- this.mapView.on("user_interaction", () => this.resetPositionState());
1270
- }), this.mapView.panTo({ lat: this.currentPosition.coords.latitude, lng: this.currentPosition.coords.longitude }), this.positionState !== c.POSITION_TRACKED && this.setPositionState(c.POSITION_CENTERED), this.canBeTracked && (DeviceOrientationEvent.requestPermission ? DeviceOrientationEvent.requestPermission().then((o) => {
1271
- o === "granted" && this.positionState === c.POSITION_TRACKED ? window.addEventListener("deviceorientation", this.handleDeviceOrientationReference) : window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference);
1272
- }) : this.positionState === c.POSITION_TRACKED ? window.addEventListener("deviceorientation", this.handleDeviceOrientationReference) : window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference)));
1273
- }
1274
- /**
1275
- * Rotates and tilts the map.
1276
- *
1277
- * @param {DeviceOrientationEvent} e
1278
- */
1279
- handleDeviceOrientation(o) {
1280
- (!this.orientation || this.orientation - (360 - o.alpha) > 1 || this.orientation - (360 - o.alpha) < -1) && (this.orientation = 360 - o.alpha, this.mapView.easeTo({
1281
- center: [this.currentPosition.coords.longitude, this.currentPosition.coords.latitude],
1282
- rotation: this.orientation,
1283
- tilt: 60,
1284
- easing: (s) => s * (2 - s)
1285
- }));
1286
- }
1287
- /**
1288
- * Rotates the compass button using the transform CSS property.
1289
- *
1290
- * @param {number} bearing
1291
- */
1292
- setCompassStyle(o) {
1293
- this.compassButton.style.transform = `rotate(${o}deg)`;
1294
- }
1295
- /**
1296
- * Request for current position, emit events and show position on map based on result.
1297
- *
1298
- * @param {boolean} [selfInvoked=false] - Used to track if call was invoked by clicking on position control or not.
1299
- */
1300
- watchPosition(o = !1) {
1301
- if (!navigator.geolocation)
1302
- return;
1303
- this.setPositionState(c.POSITION_REQUESTING), this.setPositionProviderOnMapView();
1304
- const s = Date.now();
1305
- navigator.geolocation.watchPosition((M) => {
1306
- this.currentPosition && M.coords.accuracy === this.currentPosition.coords.accuracy && M.coords.latitude === this.currentPosition.coords.latitude && M.coords.longitude === this.currentPosition.coords.longitude || (this.currentPosition = M, this.positionIsAccurate = this.currentPosition.coords.accuracy <= this.options.maxAccuracy, this.positionIsAccurate ? (this.positionState === c.POSITION_TRACKED ? this.setPositionState(c.POSITION_UNTRACKED) : this.positionState !== c.POSITION_UNTRACKED && (this.setPositionState(c.POSITION_KNOWN), this.mapView.tilt(0)), window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference)) : (this.setPositionState(c.POSITION_INACCURATE), this.position_error.emit({ code: 11, message: "Inaccurate position: " + M.coords.accuracy })), this.position_received.emit({
1307
- position: this.currentPosition,
1308
- selfInvoked: o,
1309
- accurate: this.positionIsAccurate
1310
- }));
1311
- }, (M) => {
1312
- (M.code !== 3 || !this.currentPosition || this.currentPosition.timestamp <= s) && this.setPositionUnknown(M);
1313
- }, this.options.positionOptions);
1314
- }
1315
- /**
1316
- * Sets position button state.
1317
- *
1318
- * @param {PositionStateTypes} state
1319
- */
1320
- setPositionState(o) {
1321
- this.positionState = o;
1322
- }
1323
- /**
1324
- * Handle click on the compass button.
1325
- */
1326
- onCompassButtonClicked() {
1327
- this.setCompassStyle(0), this.mapView.rotate(0), this.mapView.tilt(0), window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference), this.positionState === c.POSITION_TRACKED ? this.setPositionState(c.POSITION_CENTERED) : this.positionState === c.POSITION_UNTRACKED && this.setPositionState(c.POSITION_KNOWN);
1328
- }
1329
- /**
1330
- * Handle click on position button.
1331
- * Stops propagation to avoid any map click listeners to fire.
1332
- *
1333
- * @param {Event} event
1334
- */
1335
- onPositionButtonClicked(o) {
1336
- switch (o.stopPropagation(), this.positionState) {
1337
- case c.POSITION_UNKNOWN:
1338
- this.mapView.tilt(0), this.watchPosition(!0);
1339
- break;
1340
- case c.POSITION_KNOWN:
1341
- this.mapView.tilt(0), this.panToCurrentPosition();
1342
- break;
1343
- case c.POSITION_CENTERED:
1344
- this.canBeTracked && this.setPositionState(c.POSITION_TRACKED), this.panToCurrentPosition();
1345
- break;
1346
- case c.POSITION_TRACKED:
1347
- this.mapView.tilt(0), this.mapView.rotate(0), this.setCompassStyle(0), this.setPositionState(c.POSITION_CENTERED), this.panToCurrentPosition();
1348
- break;
1349
- case c.POSITION_UNTRACKED:
1350
- this.setPositionState(c.POSITION_TRACKED), this.panToCurrentPosition();
1351
- break;
1352
- }
1353
- }
1354
- /**
1355
- * Called every time the component has connected to the DOM.
1356
- * 1. Assigning the mapView and options attributes.
1357
- * 2. Checking for the navigator's state.
1358
- * 3. Determining whether the device can be tracked.
1359
- * 4. Asking for permission to track the device.
1360
- * 5. Styling the compass button.
1361
- */
1362
- connectedCallback() {
1363
- var o;
1364
- if (this.mapView = this.mapsindoors.getMapView(), this.options = Ki(this.defaultOptions, (o = this.myPositionOptions) !== null && o !== void 0 ? o : {}), !navigator.geolocation) {
1365
- this.position_error.emit({ code: 10, message: "Geolocation not available" });
1366
- return;
1367
- }
1368
- const s = this.parser.getDevice().type;
1369
- this.canBeTracked = !!(typeof window.DeviceOrientationEvent == "function" && (s === B.Phone || s === B.Tablet) && this.mapView.rotatable && this.mapView.tiltable), !("permissions" in navigator) || !("query" in navigator.permissions) ? this.setPositionState(c.POSITION_UNKNOWN) : navigator.permissions.query({ name: "geolocation" }).then((M) => {
1370
- M.state === "granted" ? this.watchPosition() : this.setPositionState(c.POSITION_UNKNOWN);
1371
- }), this.mapView.on("rotateend", () => {
1372
- this.setCompassStyle(this.mapView.getBearing());
1373
- });
1374
- }
1375
- /**
1376
- * Renders the floor selector.
1377
- *
1378
- * @returns {JSX.Element}
1379
- */
1380
- render() {
1381
- return V(Ai, null, V("div", { class: "mi-my-position" }, V("button", { class: `mi-my-position__position-button
1382
- ${this.positionState === c.POSITION_UNKNOWN || this.positionState === c.POSITION_INACCURATE ? "mi-my-position__position-button--unknown" : ""}
1383
- ${this.positionState === c.POSITION_REQUESTING ? "mi-my-position__position-button--requesting" : ""}
1384
- ${this.positionState === c.POSITION_KNOWN ? "mi-my-position__position-button--known" : ""}
1385
- ${this.positionState === c.POSITION_CENTERED ? "mi-my-position__position-button--centered" : ""}
1386
- ${this.positionState === c.POSITION_TRACKED ? "mi-my-position__position-button--tracked" : ""}
1387
- ${this.positionState === c.POSITION_UNTRACKED ? "mi-my-position__position-button--untracked" : ""}`, onClick: (o) => this.onPositionButtonClicked(o) }), V("button", { ref: (o) => this.compassButton = o, class: "mi-my-position__compass-button", onClick: () => this.onCompassButtonClicked() })));
1388
- }
1389
- };
1390
- Bi.style = Vi;
1391
- export {
1392
- Bi as mi_my_position
1393
- };