@mapsindoors/map-template 1.83.0 → 1.84.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 (45) hide show
  1. package/dist/{GoogleMapsMap-ee5e3f10.mjs → GoogleMapsMap-c8bff8da.mjs} +2 -2
  2. package/dist/MapboxMap-eeac02e3.mjs +37817 -0
  3. package/dist/{combo-box-item.entry-c0caeaf2.mjs → combo-box-item.entry-1ea9084e.mjs} +2 -2
  4. package/dist/mapsindoors-react.es.js +2 -2
  5. package/dist/mapsindoors-react.umd.js +764 -292
  6. package/dist/mapsindoors-webcomponent.es.js +45612 -41242
  7. package/dist/mapsindoors-webcomponent.umd.js +762 -290
  8. package/dist/{mi-card_2.entry-f8d5b457.mjs → mi-card_2.entry-42c369c3.mjs} +2 -2
  9. package/dist/{mi-chip.entry-99891652.mjs → mi-chip.entry-f7009cfd.mjs} +2 -2
  10. package/dist/{mi-column.entry-2397c056.mjs → mi-column.entry-af6eb0a0.mjs} +2 -2
  11. package/dist/{mi-combo-box.entry-78eb13ba.mjs → mi-combo-box.entry-ebcbad0a.mjs} +2 -2
  12. package/dist/{mi-data-table.entry-20edbd50.mjs → mi-data-table.entry-3ff76c86.mjs} +2 -2
  13. package/dist/{mi-distance_2.entry-f863931c.mjs → mi-distance_2.entry-273556bb.mjs} +2 -2
  14. package/dist/{mi-dropdown-item.entry-9865b4b2.mjs → mi-dropdown-item.entry-269fd588.mjs} +2 -2
  15. package/dist/{mi-dropdown.entry-58a3bce3.mjs → mi-dropdown.entry-709914bc.mjs} +2 -2
  16. package/dist/{mi-floor-selector.entry-2f4e66c9.mjs → mi-floor-selector.entry-b1cb1138.mjs} +2 -2
  17. package/dist/{mi-keyboard.entry-c72249d2.mjs → mi-keyboard.entry-8b25e4ab.mjs} +2 -2
  18. package/dist/{mi-list-item-category.entry-810e32d5.mjs → mi-list-item-category.entry-15cea3f1.mjs} +2 -2
  19. package/dist/{mi-list-item-location.entry-0c7c9982.mjs → mi-list-item-location.entry-69ad460b.mjs} +2 -2
  20. package/dist/{mi-list.entry-1d3b0ed2.mjs → mi-list.entry-e317e253.mjs} +2 -2
  21. package/dist/{mi-location-booking.entry-1cd02f85.mjs → mi-location-booking.entry-ffccac8a.mjs} +2 -2
  22. package/dist/{mi-location-info.entry-1432e808.mjs → mi-location-info.entry-97ed8b2d.mjs} +2 -2
  23. package/dist/{mi-map-googlemaps.entry-e05a411c.mjs → mi-map-googlemaps.entry-f7e4a9f0.mjs} +2 -2
  24. package/dist/{mi-map-mapbox.entry-6d491150.mjs → mi-map-mapbox.entry-bc24ac5e.mjs} +2 -2
  25. package/dist/{mi-metric-card.entry-dd0d16f0.mjs → mi-metric-card.entry-7a66d927.mjs} +2 -2
  26. package/dist/mi-my-position.entry-dca1620d.mjs +618 -0
  27. package/dist/{mi-notification.entry-09e31199.mjs → mi-notification.entry-d120ef40.mjs} +2 -2
  28. package/dist/{mi-route-instructions-heading.entry-41fd76e6.mjs → mi-route-instructions-heading.entry-1c4cd946.mjs} +2 -2
  29. package/dist/{mi-route-instructions-maneuver-legacy.entry-d51a5018.mjs → mi-route-instructions-maneuver-legacy.entry-9ed5b338.mjs} +2 -2
  30. package/dist/{mi-route-instructions-maneuver.entry-7abc8c5d.mjs → mi-route-instructions-maneuver.entry-df62d445.mjs} +2 -2
  31. package/dist/{mi-route-instructions-step-legacy.entry-b9c74d0f.mjs → mi-route-instructions-step-legacy.entry-d5d2a202.mjs} +2 -2
  32. package/dist/{mi-route-instructions-step.entry-529df872.mjs → mi-route-instructions-step.entry-26a299cf.mjs} +2 -2
  33. package/dist/{mi-route-instructions.entry-a7a5fda5.mjs → mi-route-instructions.entry-73fd708b.mjs} +2 -2
  34. package/dist/{mi-scroll-buttons.entry-6f79c270.mjs → mi-scroll-buttons.entry-b8fd1d88.mjs} +2 -2
  35. package/dist/{mi-search.entry-bfea09cb.mjs → mi-search.entry-73e0a559.mjs} +2 -2
  36. package/dist/{mi-share-sms.entry-5e673d75.mjs → mi-share-sms.entry-cfae3304.mjs} +2 -2
  37. package/dist/{mi-step-switcher.entry-6124bf72.mjs → mi-step-switcher.entry-eba8d384.mjs} +2 -2
  38. package/dist/{mi-tab-panel.entry-f5d2aecd.mjs → mi-tab-panel.entry-63bb2bf8.mjs} +2 -2
  39. package/dist/{mi-tab.entry-65b7addd.mjs → mi-tab.entry-0aab505c.mjs} +2 -2
  40. package/dist/{mi-tabs.entry-fb7a483a.mjs → mi-tabs.entry-06970416.mjs} +2 -2
  41. package/dist/{mi-time.entry-c44d03ec.mjs → mi-time.entry-3c120b50.mjs} +2 -2
  42. package/dist/{reactcomponent-26e38434.mjs → reactcomponent-bcc53107.mjs} +5333 -5235
  43. package/package.json +2 -2
  44. package/dist/MapboxMap-09b73c3c.mjs +0 -33635
  45. package/dist/mi-my-position.entry-35b014fb.mjs +0 -528
@@ -1,528 +0,0 @@
1
- import { r as be, c as oe, h as yi, H as he } from "./reactcomponent-26e38434.mjs";
2
- import { c as Ne, a as Ie } from "./_commonjsHelpers-ba3f0406-b96e6d6a.mjs";
3
- import "react";
4
- import "react-dom";
5
- var Zi = Ne(function(r, u) {
6
- ((b, h) => {
7
- function D(n) {
8
- for (var a = {}, M = 0; M < n.length; M++)
9
- a[n[M].toUpperCase()] = n[M];
10
- return a;
11
- }
12
- var K = 500, Ni = "user-agent", j = "", Gi = "?", Ii = "function", R = "undefined", q = "object", fi = "string", x = "browser", _ = "cpu", L = "device", k = "engine", E = "os", J = "result", o = "name", i = "type", t = "vendor", s = "version", A = "architecture", ni = "major", e = "model", ri = "console", w = "mobile", N = "tablet", f = "smarttv", P = "wearable", ji = "xr", ai = "embedded", ci = "inapp", xi = "brands", W = "formFactors", Ai = "fullVersionList", F = "platform", zi = "platformVersion", mi = "bitness", Z = "sec-ch-ua", re = Z + "-full-version-list", ae = Z + "-arch", ce = Z + "-" + mi, ue = Z + "-form-factors", Me = Z + "-" + w, we = Z + "-" + e, Hi = Z + "-" + F, de = Hi + "-version", Vi = [xi, Ai, w, e, F, zi, A, W, mi], pi = "Amazon", X = "Apple", Ki = "ASUS", Wi = "BlackBerry", B = "Google", Bi = "Huawei", Ei = "Microsoft", ki = "Motorola", vi = "Nvidia", qi = "OnePlus", Si = "OPPO", ui = "Samsung", Mi = "Sony", Ci = "Xiaomi", Li = "Zebra", Ji = "Chromium", G = "Chromecast", wi = "Firefox", v = "Opera", Pi = "Facebook", $ = "Mobile ", di = " Browser", _i = "Windows", Fi = typeof b !== R, z = Fi && b.navigator ? b.navigator : h, H = z && z.userAgentData ? z.userAgentData : h, Ui = function(n, a) {
13
- if (typeof n === q && 0 < n.length) {
14
- for (var M in n)
15
- if (U(n[M]) == U(a))
16
- return !0;
17
- return !1;
18
- }
19
- return !!ii(n) && U(a).indexOf(U(n)) !== -1;
20
- }, Di = function(n, a) {
21
- for (var M in n)
22
- return /^(browser|cpu|device|engine|os)$/.test(M) || !!a && Di(n[M]);
23
- }, ii = function(n) {
24
- return typeof n === fi;
25
- }, Yi = function(n) {
26
- if (!n)
27
- return h;
28
- for (var a, M = [], y = ei(/\\?\"/g, n).split(","), c = 0; c < y.length; c++)
29
- -1 < y[c].indexOf(";") ? (a = gi(y[c]).split(";v="), M[c] = { brand: a[0], version: a[1] }) : M[c] = gi(y[c]);
30
- return M;
31
- }, U = function(n) {
32
- return ii(n) ? n.toLowerCase() : n;
33
- }, Qi = function(n) {
34
- return ii(n) ? ei(/[^\d\.]/g, n).split(".")[0] : h;
35
- }, Y = function(n) {
36
- for (var a in n)
37
- a = n[a], typeof a == q && a.length == 2 ? this[a[0]] = a[1] : this[a] = h;
38
- return this;
39
- }, ei = function(n, a) {
40
- return ii(a) ? a.replace(n, j) : a;
41
- }, li = function(n) {
42
- return ei(/\\?\"/g, n);
43
- }, gi = function(n, a) {
44
- if (ii(n))
45
- return n = ei(/^\s\s*/, n), typeof a === R ? n : n.substring(0, K);
46
- }, Ri = function(n, a) {
47
- if (n && a)
48
- for (var M, y, c, l, I, m = 0; m < a.length && !l; ) {
49
- for (var g = a[m], p = a[m + 1], T = M = 0; T < g.length && !l && g[T]; )
50
- if (l = g[T++].exec(n))
51
- for (y = 0; y < p.length; y++)
52
- I = l[++M], typeof (c = p[y]) === q && 0 < c.length ? c.length === 2 ? typeof c[1] == Ii ? this[c[0]] = c[1].call(this, I) : this[c[0]] = c[1] : c.length === 3 ? typeof c[1] !== Ii || c[1].exec && c[1].test ? this[c[0]] = I ? I.replace(c[1], c[2]) : h : this[c[0]] = I ? c[1].call(this, I, c[2]) : h : c.length === 4 && (this[c[0]] = I ? c[3].call(this, I.replace(c[1], c[2])) : h) : this[c] = I || h;
53
- m += 2;
54
- }
55
- }, V = function(n, a) {
56
- for (var M in a)
57
- if (typeof a[M] === q && 0 < a[M].length) {
58
- for (var y = 0; y < a[M].length; y++)
59
- if (Ui(a[M][y], n))
60
- return M === Gi ? h : M;
61
- } else if (Ui(a[M], n))
62
- return M === Gi ? h : M;
63
- return a.hasOwnProperty("*") ? a["*"] : n;
64
- }, Xi = { ME: "4.90", "NT 3.11": "NT3.51", "NT 4.0": "NT4.0", 2e3: "NT 5.0", XP: ["NT 5.1", "NT 5.2"], Vista: "NT 6.0", 7: "NT 6.1", 8: "NT 6.2", 8.1: "NT 6.3", 10: ["NT 6.4", "NT 10.0"], RT: "ARM" }, $i = { embedded: "Automotive", mobile: "Mobile", tablet: ["Tablet", "EInk"], smarttv: "TV", wearable: "Watch", xr: ["VR", "XR"], "?": ["Desktop", "Unknown"], "*": h }, ie = { browser: [[/\b(?:crmo|crios)\/([\w\.]+)/i], [s, [o, $ + "Chrome"]], [/edg(?:e|ios|a)?\/([\w\.]+)/i], [s, [o, "Edge"]], [/(opera mini)\/([-\w\.]+)/i, /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i, /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i], [o, s], [/opios[\/ ]+([\w\.]+)/i], [s, [o, v + " Mini"]], [/\bop(?:rg)?x\/([\w\.]+)/i], [s, [o, v + " GX"]], [/\bopr\/([\w\.]+)/i], [s, [o, v]], [/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i], [s, [o, "Baidu"]], [/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i], [s, [o, "Maxthon"]], [/(kindle)\/([\w\.]+)/i, /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i, /(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i, /(?:ms|\()(ie) ([\w\.]+)/i, /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:lg |qute)browser)\/([-\w\.]+)/i, /(heytap|ovi|115|surf)browser\/([\d\.]+)/i, /(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i], [o, s], [/quark(?:pc)?\/([-\w\.]+)/i], [s, [o, "Quark"]], [/\bddg\/([\w\.]+)/i], [s, [o, "DuckDuckGo"]], [/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i], [s, [o, "UCBrowser"]], [/microm.+\bqbcore\/([\w\.]+)/i, /\bqbcore\/([\w\.]+).+microm/i, /micromessenger\/([\w\.]+)/i], [s, [o, "WeChat"]], [/konqueror\/([\w\.]+)/i], [s, [o, "Konqueror"]], [/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i], [s, [o, "IE"]], [/ya(?:search)?browser\/([\w\.]+)/i], [s, [o, "Yandex"]], [/slbrowser\/([\w\.]+)/i], [s, [o, "Smart Lenovo" + di]], [/(avast|avg)\/([\w\.]+)/i], [[o, /(.+)/, "$1 Secure" + di], s], [/\bfocus\/([\w\.]+)/i], [s, [o, wi + " Focus"]], [/\bopt\/([\w\.]+)/i], [s, [o, v + " Touch"]], [/coc_coc\w+\/([\w\.]+)/i], [s, [o, "Coc Coc"]], [/dolfin\/([\w\.]+)/i], [s, [o, "Dolphin"]], [/coast\/([\w\.]+)/i], [s, [o, v + " Coast"]], [/miuibrowser\/([\w\.]+)/i], [s, [o, "MIUI" + di]], [/fxios\/([\w\.-]+)/i], [s, [o, $ + wi]], [/\bqihoobrowser\/?([\w\.]*)/i], [s, [o, "360"]], [/\b(qq)\/([\w\.]+)/i], [[o, /(.+)/, "$1Browser"], s], [/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i], [[o, /(.+)/, "$1" + di], s], [/samsungbrowser\/([\w\.]+)/i], [s, [o, ui + " Internet"]], [/metasr[\/ ]?([\d\.]+)/i], [s, [o, "Sogou Explorer"]], [/(sogou)mo\w+\/([\d\.]+)/i], [[o, "Sogou Mobile"], s], [/(electron)\/([\w\.]+) safari/i, /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, /m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i], [o, s], [/(lbbrowser|rekonq)/i], [o], [/ome\/([\w\.]+) \w* ?(iron) saf/i, /ome\/([\w\.]+).+qihu (360)[es]e/i], [s, o], [/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i], [[o, Pi], s, [i, ci]], [/(Klarna)\/([\w\.]+)/i, /(kakao(?:talk|story))[\/ ]([\w\.]+)/i, /(naver)\(.*?(\d+\.[\w\.]+).*\)/i, /(daum)apps[\/ ]([\w\.]+)/i, /safari (line)\/([\w\.]+)/i, /\b(line)\/([\w\.]+)\/iab/i, /(alipay)client\/([\w\.]+)/i, /(twitter)(?:and| f.+e\/([\w\.]+))/i, /(instagram|snapchat)[\/ ]([-\w\.]+)/i], [o, s, [i, ci]], [/\bgsa\/([\w\.]+) .*safari\//i], [s, [o, "GSA"], [i, ci]], [/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i], [s, [o, "TikTok"], [i, ci]], [/\[(linkedin)app\]/i], [o, [i, ci]], [/(chromium)[\/ ]([-\w\.]+)/i], [o, s], [/headlesschrome(?:\/([\w\.]+)| )/i], [s, [o, "Chrome Headless"]], [/ wv\).+(chrome)\/([\w\.]+)/i], [[o, "Chrome WebView"], s], [/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i], [s, [o, "Android" + di]], [/chrome\/([\w\.]+) mobile/i], [s, [o, $ + "Chrome"]], [/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i], [o, s], [/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i], [s, [o, $ + "Safari"]], [/iphone .*mobile(?:\/\w+ | ?)safari/i], [[o, $ + "Safari"]], [/version\/([\w\.\,]+) .*(safari)/i], [s, o], [/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i], [o, [s, "1"]], [/(webkit|khtml)\/([\w\.]+)/i], [o, s], [/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i], [[o, $ + wi], s], [/(navigator|netscape\d?)\/([-\w\.]+)/i], [[o, "Netscape"], s], [/(wolvic|librewolf)\/([\w\.]+)/i], [o, s], [/mobile vr; rv:([\w\.]+)\).+firefox/i], [s, [o, wi + " Reality"]], [/ekiohf.+(flow)\/([\w\.]+)/i, /(swiftfox)/i, /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i, /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i, /(firefox)\/([\w\.]+)/i, /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i, /(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i, /\b(links) \(([\w\.]+)/i], [o, [s, /_/g, "."]], [/(cobalt)\/([\w\.]+)/i], [o, [s, /[^\d\.]+./, j]]], cpu: [[/\b((amd|x|x86[-_]?|wow|win)64)\b/i], [[A, "amd64"]], [/(ia32(?=;))/i, /\b((i[346]|x)86)(pc)?\b/i], [[A, "ia32"]], [/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i], [[A, "arm64"]], [/\b(arm(v[67])?ht?n?[fl]p?)\b/i], [[A, "armhf"]], [/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i], [[A, "arm"]], [/((ppc|powerpc)(64)?)( mac|;|\))/i], [[A, /ower/, j, U]], [/ sun4\w[;\)]/i], [[A, "sparc"]], [/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i], [[A, U]]], device: [[/\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], [e, [t, ui], [i, N]], [/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i, /samsung[- ]((?!sm-[lr])[-\w]+)/i, /sec-(sgh\w+)/i], [e, [t, ui], [i, w]], [/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i], [e, [t, X], [i, w]], [/\((ipad);[-\w\),; ]+apple/i, /applecoremedia\/[\w\.]+ \((ipad)/i, /\b(ipad)\d\d?,\d\d?[;\]].+ios/i], [e, [t, X], [i, N]], [/(macintosh);/i], [e, [t, X]], [/\b(sh-?[altvz]?\d\d[a-ekm]?)/i], [e, [t, "Sharp"], [i, w]], [/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i], [e, [t, "Honor"], [i, N]], [/honor([-\w ]+)[;\)]/i], [e, [t, "Honor"], [i, w]], [/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i], [e, [t, Bi], [i, N]], [/(?:huawei)([-\w ]+)[;\)]/i, /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i], [e, [t, Bi], [i, w]], [/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i, /\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i], [[e, /_/g, " "], [t, Ci], [i, N]], [/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i, /\b; (\w+) build\/hm\1/i, /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i, /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i, /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i, /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i, / ([\w ]+) miui\/v?\d/i], [[e, /_/g, " "], [t, Ci], [i, w]], [/; (\w+) bui.+ oppo/i, /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i], [e, [t, Si], [i, w]], [/\b(opd2(\d{3}a?))(?: bui|\))/i], [e, [t, V, { OnePlus: ["304", "403", "203"], "*": Si }], [i, N]], [/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i], [e, [t, "BLU"], [i, w]], [/; vivo (\w+)(?: bui|\))/i, /\b(v[12]\d{3}\w?[at])(?: bui|;)/i], [e, [t, "Vivo"], [i, w]], [/\b(rmx[1-3]\d{3})(?: bui|;|\))/i], [e, [t, "Realme"], [i, w]], [/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i, /\bmot(?:orola)?[- ](\w*)/i, /((?:moto(?! 360)[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i], [e, [t, ki], [i, w]], [/\b(mz60\d|xoom[2 ]{0,2}) build\//i], [e, [t, ki], [i, N]], [/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i], [e, [t, "LG"], [i, N]], [/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i, /\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch))(\w+)/i, /\blg-?([\d\w]+) bui/i], [e, [t, "LG"], [i, w]], [/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i, /lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i], [e, [t, "Lenovo"], [i, N]], [/(nokia) (t[12][01])/i], [t, e, [i, N]], [/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i, /nokia[-_ ]?(([-\w\. ]*))/i], [[e, /_/g, " "], [i, w], [t, "Nokia"]], [/(pixel (c|tablet))\b/i], [e, [t, B], [i, N]], [/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i], [e, [t, B], [i, w]], [/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], [e, [t, Mi], [i, w]], [/sony tablet [ps]/i, /\b(?:sony)?sgp\w+(?: bui|\))/i], [[e, "Xperia Tablet"], [t, Mi], [i, N]], [/ (kb2005|in20[12]5|be20[12][59])\b/i, /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i], [e, [t, qi], [i, w]], [/(alexa)webm/i, /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i, /(kf[a-z]+)( bui|\)).+silk\//i], [e, [t, pi], [i, N]], [/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i], [[e, /(.+)/g, "Fire Phone $1"], [t, pi], [i, w]], [/(playbook);[-\w\),; ]+(rim)/i], [e, t, [i, N]], [/\b((?:bb[a-f]|st[hv])100-\d)/i, /\(bb10; (\w+)/i], [e, [t, Wi], [i, w]], [/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i], [e, [t, Ki], [i, N]], [/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i], [e, [t, Ki], [i, w]], [/(nexus 9)/i], [e, [t, "HTC"], [i, N]], [/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i, /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i, /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i], [t, [e, /_/g, " "], [i, w]], [/tcl (xess p17aa)/i, /droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i], [e, [t, "TCL"], [i, N]], [/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i], [e, [t, "TCL"], [i, w]], [/(itel) ((\w+))/i], [[t, U], e, [i, V, { tablet: ["p10001l", "w7001"], "*": "mobile" }]], [/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i], [e, [t, "Acer"], [i, N]], [/droid.+; (m[1-5] note) bui/i, /\bmz-([-\w]{2,})/i], [e, [t, "Meizu"], [i, w]], [/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i], [e, [t, "Ulefone"], [i, w]], [/; (energy ?\w+)(?: bui|\))/i, /; energizer ([\w ]+)(?: bui|\))/i], [e, [t, "Energizer"], [i, w]], [/; cat (b35);/i, /; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i], [e, [t, "Cat"], [i, w]], [/((?:new )?andromax[\w- ]+)(?: bui|\))/i], [e, [t, "Smartfren"], [i, w]], [/droid.+; (a(?:015|06[35]|142p?))/i], [e, [t, "Nothing"], [i, w]], [/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i, /archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i], [e, [t, "Archos"], [i, N]], [/archos ([\w ]+)( b|\))/i, /; (ac[3-6]\d\w{2,8})( b|\))/i], [e, [t, "Archos"], [i, w]], [/(imo) (tab \w+)/i, /(infinix) (x1101b?)/i], [t, e, [i, N]], [/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i, /; (blu|hmd|imo|tcl)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i, /(hp) ([\w ]+\w)/i, /(microsoft); (lumia[\w ]+)/i, /(lenovo)[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i, /(oppo) ?([\w ]+) bui/i], [t, e, [i, w]], [/(kobo)\s(ereader|touch)/i, /(hp).+(touchpad(?!.+tablet)|tablet)/i, /(kindle)\/([\w\.]+)/i], [t, e, [i, N]], [/(surface duo)/i], [e, [t, Ei], [i, N]], [/droid [\d\.]+; (fp\du?)(?: b|\))/i], [e, [t, "Fairphone"], [i, w]], [/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i], [e, [t, vi], [i, N]], [/(sprint) (\w+)/i], [t, e, [i, w]], [/(kin\.[onetw]{3})/i], [[e, /\./g, " "], [t, Ei], [i, w]], [/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i], [e, [t, Li], [i, N]], [/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i], [e, [t, Li], [i, w]], [/smart-tv.+(samsung)/i], [t, [i, f]], [/hbbtv.+maple;(\d+)/i], [[e, /^/, "SmartTV"], [t, ui], [i, f]], [/tcast.+(lg)e?. ([-\w]+)/i], [t, e, [i, f]], [/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i], [[t, "LG"], [i, f]], [/(apple) ?tv/i], [t, [e, X + " TV"], [i, f]], [/crkey.*devicetype\/chromecast/i], [[e, G + " Third Generation"], [t, B], [i, f]], [/crkey.*devicetype\/([^/]*)/i], [[e, /^/, "Chromecast "], [t, B], [i, f]], [/fuchsia.*crkey/i], [[e, G + " Nest Hub"], [t, B], [i, f]], [/crkey/i], [[e, G], [t, B], [i, f]], [/(portaltv)/i], [e, [t, Pi], [i, f]], [/droid.+aft(\w+)( bui|\))/i], [e, [t, pi], [i, f]], [/(shield \w+ tv)/i], [e, [t, vi], [i, f]], [/\(dtv[\);].+(aquos)/i, /(aquos-tv[\w ]+)\)/i], [e, [t, "Sharp"], [i, f]], [/(bravia[\w ]+)( bui|\))/i], [e, [t, Mi], [i, f]], [/(mi(tv|box)-?\w+) bui/i], [e, [t, Ci], [i, f]], [/Hbbtv.*(technisat) (.*);/i], [t, e, [i, f]], [/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i], [[t, gi], [e, gi], [i, f]], [/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i], [e, [i, f]], [/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i], [[i, f]], [/(ouya)/i, /(nintendo) (\w+)/i], [t, e, [i, ri]], [/droid.+; (shield)( bui|\))/i], [e, [t, vi], [i, ri]], [/(playstation \w+)/i], [e, [t, Mi], [i, ri]], [/\b(xbox(?: one)?(?!; xbox))[\); ]/i], [e, [t, Ei], [i, ri]], [/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i], [e, [t, ui], [i, P]], [/((pebble))app/i, /(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i], [t, e, [i, P]], [/(ow(?:19|20)?we?[1-3]{1,3})/i], [e, [t, Si], [i, P]], [/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i], [e, [t, X], [i, P]], [/(opwwe\d{3})/i], [e, [t, qi], [i, P]], [/(moto 360)/i], [e, [t, ki], [i, P]], [/(smartwatch 3)/i], [e, [t, Mi], [i, P]], [/(g watch r)/i], [e, [t, "LG"], [i, P]], [/droid.+; (wt63?0{2,3})\)/i], [e, [t, Li], [i, P]], [/droid.+; (glass) \d/i], [e, [t, B], [i, ji]], [/(pico) (4|neo3(?: link|pro)?)/i], [t, e, [i, ji]], [/(quest( \d| pro)?s?).+vr/i], [e, [t, Pi], [i, ji]], [/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i], [t, [i, ai]], [/(aeobc)\b/i], [e, [t, pi], [i, ai]], [/(homepod).+mac os/i], [e, [t, X], [i, ai]], [/windows iot/i], [[i, ai]], [/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+?(mobile|vr|\d) safari/i], [e, [i, V, { mobile: "Mobile", xr: "VR", "*": N }]], [/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i], [[i, N]], [/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i], [[i, w]], [/droid .+?; ([\w\. -]+)( bui|\))/i], [e, [t, "Generic"]]], engine: [[/windows.+ edge\/([\w\.]+)/i], [s, [o, "EdgeHTML"]], [/(arkweb)\/([\w\.]+)/i], [o, s], [/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i], [s, [o, "Blink"]], [/(presto)\/([\w\.]+)/i, /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i, /ekioh(flow)\/([\w\.]+)/i, /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, /(icab)[\/ ]([23]\.[\d\.]+)/i, /\b(libweb)/i], [o, s], [/ladybird\//i], [[o, "LibWeb"]], [/rv\:([\w\.]{1,9})\b.+(gecko)/i], [s, o]], os: [[/microsoft (windows) (vista|xp)/i], [o, s], [/(windows (?:phone(?: os)?|mobile|iot))[\/ ]?([\d\.\w ]*)/i], [o, [s, V, Xi]], [/windows nt 6\.2; (arm)/i, /windows[\/ ]([ntce\d\. ]+\w)(?!.+xbox)/i, /(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i], [[s, V, Xi], [o, _i]], [/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i, /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i, /cfnetwork\/.+darwin/i], [[s, /_/g, "."], [o, "iOS"]], [/(mac os x) ?([\w\. ]*)/i, /(macintosh|mac_powerpc\b)(?!.+haiku)/i], [[o, "macOS"], [s, /_/g, "."]], [/android ([\d\.]+).*crkey/i], [s, [o, G + " Android"]], [/fuchsia.*crkey\/([\d\.]+)/i], [s, [o, G + " Fuchsia"]], [/crkey\/([\d\.]+).*devicetype\/smartspeaker/i], [s, [o, G + " SmartSpeaker"]], [/linux.*crkey\/([\d\.]+)/i], [s, [o, G + " Linux"]], [/crkey\/([\d\.]+)/i], [s, [o, G]], [/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i], [s, o], [/(ubuntu) ([\w\.]+) like android/i], [[o, /(.+)/, "$1 Touch"], s], [/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen|webos)\w*[-\/\.; ]?([\d\.]*)/i], [o, s], [/\(bb(10);/i], [s, [o, Wi]], [/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i], [s, [o, "Symbian"]], [/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i], [s, [o, wi + " OS"]], [/web0s;.+rt(tv)/i, /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i], [s, [o, "webOS"]], [/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i], [s, [o, "watchOS"]], [/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i], [[o, "Chrome OS"], s], [/panasonic;(viera)/i, /(netrange)mmh/i, /(nettv)\/(\d+\.[\w\.]+)/i, /(nintendo|playstation) (\w+)/i, /(xbox); +xbox ([^\);]+)/i, /(pico) .+os([\w\.]+)/i, /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i, /(mint)[\/\(\) ]?(\w*)/i, /(mageia|vectorlinux)[; ]/i, /([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, /(hurd|linux)(?: arm\w*| x86\w*| ?)([\w\.]*)/i, /(gnu) ?([\w\.]*)/i, /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i, /(haiku) (\w+)/i], [o, s], [/(sunos) ?([\w\.\d]*)/i], [[o, "Solaris"], s], [/((?:open)?solaris)[-\/ ]?([\w\.]*)/i, /(aix) ((\d)(?=\.|\)| )[\w\.])*/i, /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, /(unix) ?([\w\.]*)/i], [o, s]] }, Ti = (v = { init: {}, isIgnore: {}, isIgnoreRgx: {}, toString: {} }, Y.call(v.init, [[x, [o, s, ni, i]], [_, [A]], [L, [i, e, t]], [k, [o, s]], [E, [o, s]]]), Y.call(v.isIgnore, [[x, [s, ni]], [k, [s]], [E, [s]]]), Y.call(v.isIgnoreRgx, [[x, / ?browser$/i], [E, / ?os$/i]]), Y.call(v.toString, [[x, [o, s]], [_, [A]], [L, [t, e]], [k, [o, s]], [E, [o, s]]]), v), le = function(n, a) {
65
- var M = Ti.init[a], y = Ti.isIgnore[a] || 0, c = Ti.isIgnoreRgx[a] || 0, l = Ti.toString[a] || 0;
66
- function I() {
67
- Y.call(this, M);
68
- }
69
- return I.prototype.getItem = function() {
70
- return n;
71
- }, I.prototype.withClientHints = function() {
72
- return H ? H.getHighEntropyValues(Vi).then(function(m) {
73
- return n.setCH(new ee(m, !1)).parseCH().get();
74
- }) : n.parseCH().get();
75
- }, I.prototype.withFeatureCheck = function() {
76
- return n.detectFeature().get();
77
- }, a != J && (I.prototype.is = function(m) {
78
- var g, p = !1;
79
- for (g in this)
80
- if (this.hasOwnProperty(g) && !Ui(y, g) && U(c ? ei(c, this[g]) : this[g]) == U(c ? ei(c, m) : m)) {
81
- if (p = !0, m != R)
82
- break;
83
- } else if (m == R && p) {
84
- p = !p;
85
- break;
86
- }
87
- return p;
88
- }, I.prototype.toString = function() {
89
- var m, g = j;
90
- for (m in l)
91
- typeof this[l[m]] !== R && (g += (g ? " " : j) + this[l[m]]);
92
- return g || R;
93
- }), H || (I.prototype.then = function(m) {
94
- function g() {
95
- for (var Q in p)
96
- p.hasOwnProperty(Q) && (this[Q] = p[Q]);
97
- }
98
- var p = this, T = (g.prototype = { is: I.prototype.is, toString: I.prototype.toString }, new g());
99
- return m(T), T;
100
- }), new I();
101
- };
102
- function ee(n, a) {
103
- if (n = n || {}, Y.call(this, Vi), a)
104
- Y.call(this, [[xi, Yi(n[Z])], [Ai, Yi(n[re])], [w, /\?1/.test(n[Me])], [e, li(n[we])], [F, li(n[Hi])], [zi, li(n[de])], [A, li(n[ae])], [W, Yi(n[ue])], [mi, li(n[ce])]]);
105
- else
106
- for (var M in n)
107
- this.hasOwnProperty(M) && typeof n[M] !== R && (this[M] = n[M]);
108
- }
109
- function te(n, a, M, y) {
110
- return this.get = function(c) {
111
- return c ? this.data.hasOwnProperty(c) ? this.data[c] : h : this.data;
112
- }, this.set = function(c, l) {
113
- return this.data[c] = l, this;
114
- }, this.setCH = function(c) {
115
- return this.uaCH = c, this;
116
- }, this.detectFeature = function() {
117
- if (z && z.userAgent == this.ua)
118
- switch (this.itemType) {
119
- case x:
120
- z.brave && typeof z.brave.isBrave == Ii && this.set(o, "Brave");
121
- break;
122
- case L:
123
- !this.get(i) && H && H[w] && this.set(i, w), this.get(e) == "Macintosh" && z && typeof z.standalone !== R && z.maxTouchPoints && 2 < z.maxTouchPoints && this.set(e, "iPad").set(i, N);
124
- break;
125
- case E:
126
- !this.get(o) && H && H[F] && this.set(o, H[F]);
127
- break;
128
- case J:
129
- var c = this.data, l = function(I) {
130
- return c[I].getItem().detectFeature().get();
131
- };
132
- this.set(x, l(x)).set(_, l(_)).set(L, l(L)).set(k, l(k)).set(E, l(E));
133
- }
134
- return this;
135
- }, this.parseUA = function() {
136
- return this.itemType != J && Ri.call(this.data, this.ua, this.rgxMap), this.itemType == x && this.set(ni, Qi(this.get(s))), this;
137
- }, this.parseCH = function() {
138
- var c, l = this.uaCH, I = this.rgxMap;
139
- switch (this.itemType) {
140
- case x:
141
- case k:
142
- var m, g = l[Ai] || l[xi];
143
- if (g)
144
- for (var p in g) {
145
- var T = g[p].brand || g[p], p = g[p].version;
146
- this.itemType != x || /not.a.brand/i.test(T) || m && (!/chrom/i.test(m) || T == Ji) || (T = V(T, { Chrome: "Google Chrome", Edge: "Microsoft Edge", "Chrome WebView": "Android WebView", "Chrome Headless": "HeadlessChrome", "Huawei Browser": "HuaweiBrowser", "MIUI Browser": "Miui Browser", "Opera Mobi": "OperaMobile", Yandex: "YaBrowser" }), this.set(o, T).set(s, p).set(ni, Qi(p)), m = T), this.itemType == k && T == Ji && this.set(s, p);
147
- }
148
- break;
149
- case _:
150
- var O = l[A];
151
- O && (l[mi] == "64" && (O += "64"), Ri.call(this.data, O + ";", I));
152
- break;
153
- case L:
154
- if (l[w] && this.set(i, w), l[e] && (this.set(e, l[e]), this.get(i) && this.get(t) || (Ri.call(O = {}, "droid 9; " + l[e] + ")", I), !this.get(i) && O.type && this.set(i, O.type), !this.get(t) && O.vendor && this.set(t, O.vendor))), l[W]) {
155
- if (typeof l[W] != "string")
156
- for (var Q = 0; !c && Q < l[W].length; )
157
- c = V(l[W][Q++], $i);
158
- else
159
- c = V(l[W], $i);
160
- this.set(i, c);
161
- }
162
- break;
163
- case E:
164
- var C, O = l[F];
165
- O && (C = l[zi], O == _i && (C = 13 <= parseInt(Qi(C), 10) ? "11" : "10"), this.set(o, O).set(s, C)), this.get(o) == _i && l[e] == "Xbox" && this.set(o, "Xbox").set(s, h);
166
- break;
167
- case J:
168
- var Oi = this.data, O = function(ge) {
169
- return Oi[ge].getItem().setCH(l).parseCH().get();
170
- };
171
- this.set(x, O(x)).set(_, O(_)).set(L, O(L)).set(k, O(k)).set(E, O(E));
172
- }
173
- return this;
174
- }, Y.call(this, [["itemType", n], ["ua", a], ["uaCH", y], ["rgxMap", M], ["data", le(this, n)]]), this;
175
- }
176
- function S(n, a, M) {
177
- var y, c, l, I, m;
178
- return typeof n === q ? (a = Di(n, !0) ? (typeof a === q && (M = a), n) : (M = n, h), n = h) : typeof n !== fi || Di(a, !0) || (M = a, a = h), M && typeof M.append === Ii && (y = {}, M.forEach(function(g, p) {
179
- y[p] = g;
180
- }), M = y), this instanceof S ? (c = typeof n === fi ? n : M && M[Ni] ? M[Ni] : z && z.userAgent ? z.userAgent : j, l = new ee(M, !0), I = a ? ((g, p) => {
181
- var T, Q = {}, C = p;
182
- if (!Di(p))
183
- for (var Oi in C = {}, p)
184
- for (var O in p[Oi])
185
- C[O] = p[Oi][O].concat(C[O] || []);
186
- for (T in g)
187
- Q[T] = C[T] && C[T].length % 2 == 0 ? C[T].concat(g[T]) : g[T];
188
- return Q;
189
- })(ie, a) : ie, Y.call(this, [["getBrowser", (m = function(g) {
190
- return g == J ? function() {
191
- return new te(g, c, I, l).set("ua", c).set(x, this.getBrowser()).set(_, this.getCPU()).set(L, this.getDevice()).set(k, this.getEngine()).set(E, this.getOS()).get();
192
- } : function() {
193
- return new te(g, c, I[g], l).parseUA().get();
194
- };
195
- })(x)], ["getCPU", m(_)], ["getDevice", m(L)], ["getEngine", m(k)], ["getOS", m(E)], ["getResult", m(J)], ["getUA", function() {
196
- return c;
197
- }], ["setUA", function(g) {
198
- return ii(g) && (c = g.length > K ? gi(g, K) : g), this;
199
- }]]).setUA(c), this) : new S(n, a, M).getResult();
200
- }
201
- S.VERSION = "2.0.3", S.BROWSER = D([o, s, ni, i]), S.CPU = D([A]), S.DEVICE = D([e, t, i, ri, w, f, N, P, ai]), S.ENGINE = S.OS = D([o, s]), (u = r.exports ? r.exports = S : u).UAParser = S;
202
- var bi, ti = Fi && (b.jQuery || b.Zepto);
203
- ti && !ti.ua && (bi = new S(), ti.ua = bi.getResult(), ti.ua.get = function() {
204
- return bi.getUA();
205
- }, ti.ua.set = function(n) {
206
- bi.setUA(n);
207
- var a, M = bi.getResult();
208
- for (a in M)
209
- ti.ua[a] = M[a];
210
- });
211
- })(typeof window == "object" ? window : Ie);
212
- }), me = function(u) {
213
- return pe(u) && !De(u);
214
- };
215
- function pe(r) {
216
- return !!r && typeof r == "object";
217
- }
218
- function De(r) {
219
- var u = Object.prototype.toString.call(r);
220
- return u === "[object RegExp]" || u === "[object Date]" || ye(r);
221
- }
222
- var Te = typeof Symbol == "function" && Symbol.for, Oe = Te ? Symbol.for("react.element") : 60103;
223
- function ye(r) {
224
- return r.$$typeof === Oe;
225
- }
226
- function fe(r) {
227
- return Array.isArray(r) ? [] : {};
228
- }
229
- function hi(r, u) {
230
- return u.clone !== !1 && u.isMergeableObject(r) ? si(fe(r), r, u) : r;
231
- }
232
- function je(r, u, b) {
233
- return r.concat(u).map(function(h) {
234
- return hi(h, b);
235
- });
236
- }
237
- function xe(r, u) {
238
- if (!u.customMerge)
239
- return si;
240
- var b = u.customMerge(r);
241
- return typeof b == "function" ? b : si;
242
- }
243
- function Ae(r) {
244
- return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(r).filter(function(u) {
245
- return Object.propertyIsEnumerable.call(r, u);
246
- }) : [];
247
- }
248
- function se(r) {
249
- return Object.keys(r).concat(Ae(r));
250
- }
251
- function ne(r, u) {
252
- try {
253
- return u in r;
254
- } catch {
255
- return !1;
256
- }
257
- }
258
- function ze(r, u) {
259
- return ne(r, u) && !(Object.hasOwnProperty.call(r, u) && Object.propertyIsEnumerable.call(r, u));
260
- }
261
- function Ee(r, u, b) {
262
- var h = {};
263
- return b.isMergeableObject(r) && se(r).forEach(function(D) {
264
- h[D] = hi(r[D], b);
265
- }), se(u).forEach(function(D) {
266
- ze(r, D) || (ne(r, D) && b.isMergeableObject(u[D]) ? h[D] = xe(D, b)(r[D], u[D], b) : h[D] = hi(u[D], b));
267
- }), h;
268
- }
269
- function si(r, u, b) {
270
- b = b || {}, b.arrayMerge = b.arrayMerge || je, b.isMergeableObject = b.isMergeableObject || me, b.cloneUnlessOtherwiseSpecified = hi;
271
- var h = Array.isArray(u), D = Array.isArray(r), K = h === D;
272
- return K ? h ? b.arrayMerge(r, u, b) : Ee(r, u, b) : hi(u, b);
273
- }
274
- si.all = function(u, b) {
275
- if (!Array.isArray(u))
276
- throw new Error("first argument should be an array");
277
- return u.reduce(function(h, D) {
278
- return si(h, D, b);
279
- }, {});
280
- };
281
- var ke = si, ve = ke;
282
- class oi {
283
- /**
284
- * Check if it is possible to get the position of the device using the GeoLocation API.
285
- * @returns {boolean} True if the GeoLocation API is available in the browser, false otherwise.
286
- */
287
- static isAvailable() {
288
- return "geolocation" in navigator;
289
- }
290
- /**
291
- * Check if the user has already granted permission to access the device's location.
292
- * @returns {Promise<boolean>} A promise that resolves to true if permission is granted, false otherwise.
293
- */
294
- static async isAlreadyGranted() {
295
- return !("permissions" in navigator) || !("query" in navigator.permissions) ? Promise.resolve(!1) : (await navigator.permissions.query({ name: "geolocation" })).state === "granted";
296
- }
297
- /**
298
- * Listen for position updates from the GeoLocation API.
299
- * @param {number} maxAccuracy - The maximum accuracy of the position to accept.
300
- * @param {Function} positionError - Callback function to call when an error occurs while getting the position.
301
- * @param {Function} positionInaccurate - Callback function to call when the position is inaccurate.
302
- * @param {Function} positionRequesting - Callback function to call when the position is being requested.
303
- * @param {Function} positionReceived - Callback function to call when a position is received.
304
- */
305
- static listenForPosition(u, b, h, D, K) {
306
- if (!("permissions" in navigator) || !("query" in navigator.permissions)) {
307
- b();
308
- return;
309
- }
310
- D();
311
- const Ni = Date.now();
312
- this.positionWatchId = navigator.geolocation.watchPosition((j) => {
313
- this.currentPosition && j.coords.accuracy === this.currentPosition.coords.accuracy && j.coords.latitude === this.currentPosition.coords.latitude && j.coords.longitude === this.currentPosition.coords.longitude || (this.currentPosition = j, this.currentPosition.coords.accuracy <= u ? K(j) : h(j.coords.accuracy));
314
- }, (j) => {
315
- (j.code !== 3 || !this.currentPosition || this.currentPosition.timestamp <= Ni) && b(j);
316
- });
317
- }
318
- /**
319
- * Stop listening for position updates from the GeoLocation API.
320
- * This will clear the watch set by `listenForPosition` and reset the current position.
321
- *
322
- * @returns {void}
323
- */
324
- static stopListeningForPosition() {
325
- this.positionWatchId !== null && (navigator.geolocation.clearWatch(this.positionWatchId), this.positionWatchId = null), this.currentPosition = null;
326
- }
327
- }
328
- oi.currentPosition = null;
329
- oi.positionWatchId = null;
330
- const Se = ".mi-my-position{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%}";
331
- var d;
332
- (function(r) {
333
- r.POSITION_UNKNOWN = "POSITION_UNKNOWN", r.POSITION_REQUESTING = "POSITION_REQUESTING", r.POSITION_INACCURATE = "POSITION_INACCURATE", r.POSITION_KNOWN = "POSITION_KNOWN", r.POSITION_CENTERED = "POSITION_CENTERED", r.POSITION_TRACKED = "POSITION_TRACKED", r.POSITION_UNTRACKED = "POSITION_UNTRACKED";
334
- })(d || (d = {}));
335
- const Ce = class {
336
- constructor(r) {
337
- be(this, r), this.position_error = oe(this, "position_error", 7), this.position_received = oe(this, "position_received", 7), this.parser = new Zi.UAParser(), this.handleDeviceOrientationReference = this.handleDeviceOrientation.bind(this), this.defaultOptions = {
338
- maxAccuracy: 200,
339
- positionOptions: {
340
- timeout: 3e4,
341
- enableHighAccuracy: !0,
342
- maximumAge: 0
343
- },
344
- positionMarkerStyles: {
345
- radius: "12px",
346
- strokeWeight: "2px",
347
- strokeColor: "white",
348
- fillColor: "#4169E1",
349
- fillOpacity: 1
350
- },
351
- accuracyCircleStyles: {
352
- fillColor: "#4169E1",
353
- fillOpacity: 0.16
354
- }
355
- }, this.mapsindoors = void 0, this.myPositionOptions = void 0, this.positionState = void 0;
356
- }
357
- /**
358
- * Removes the event listener for the device's orientation and resets the position button.
359
- */
360
- resetPositionState() {
361
- window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference), this.positionState === d.POSITION_TRACKED ? this.setPositionState(d.POSITION_UNTRACKED) : this.positionState === d.POSITION_CENTERED && (this.setPositionState(d.POSITION_KNOWN), this.mapView.tilt(0));
362
- }
363
- /**
364
- * Returns if position is known and accurate.
365
- *
366
- * @returns {boolean}
367
- */
368
- hasValidPosition() {
369
- return [d.POSITION_KNOWN, d.POSITION_CENTERED, d.POSITION_INACCURATE, d.POSITION_TRACKED, d.POSITION_UNTRACKED].includes(this.positionState);
370
- }
371
- /**
372
- * Sets the PositionControl as PositionProvider on the MapView.
373
- */
374
- setPositionProviderOnMapView() {
375
- this.mapView.isReady ? this.mapView.setPositionProvider(this) : this.mapView.once("ready", () => {
376
- this.mapView.setPositionProvider(this);
377
- });
378
- }
379
- /**
380
- * Pan map to center on the current position.
381
- */
382
- panToCurrentPosition() {
383
- this.hasValidPosition() && (this.mapView.once("idle", () => {
384
- this.mapView.on("user_interaction", () => this.resetPositionState());
385
- }), this.mapView.panTo({ lat: this.currentPosition.coords.latitude, lng: this.currentPosition.coords.longitude }), this.positionState !== d.POSITION_TRACKED && this.setPositionState(d.POSITION_CENTERED), this.canBeTracked && (DeviceOrientationEvent.requestPermission ? DeviceOrientationEvent.requestPermission().then((r) => {
386
- r === "granted" && this.positionState === d.POSITION_TRACKED ? window.addEventListener("deviceorientation", this.handleDeviceOrientationReference) : window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference);
387
- }) : this.positionState === d.POSITION_TRACKED ? window.addEventListener("deviceorientation", this.handleDeviceOrientationReference) : window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference)));
388
- }
389
- /**
390
- * Rotates and tilts the map.
391
- *
392
- * @param {DeviceOrientationEvent} e
393
- */
394
- handleDeviceOrientation(r) {
395
- (!this.orientation || this.orientation - (360 - r.alpha) > 1 || this.orientation - (360 - r.alpha) < -1) && (this.orientation = 360 - r.alpha, this.mapView.easeTo({
396
- center: [this.currentPosition.coords.longitude, this.currentPosition.coords.latitude],
397
- rotation: this.orientation,
398
- tilt: 60,
399
- easing: (u) => u * (2 - u)
400
- }));
401
- }
402
- /**
403
- * Rotates the compass button using the transform CSS property.
404
- *
405
- * @param {number} bearing
406
- */
407
- setCompassStyle(r) {
408
- this.compassButton.style.transform = `rotate(${r}deg)`;
409
- }
410
- /**
411
- * Method for requesting the current position, emitting events and showing position on map based on result.
412
- *
413
- * @param {boolean} [selfInvoked=false] - Used to track if call was invoked by clicking on position control or not.
414
- */
415
- watchPosition(r = !1) {
416
- this.setPositionProviderOnMapView(), oi.listenForPosition(
417
- this.options.maxAccuracy,
418
- // Position error callback
419
- (u) => {
420
- this.setPositionState(d.POSITION_UNKNOWN), this.position_error.emit(u);
421
- },
422
- // Position inaccurate callback
423
- (u) => {
424
- this.setPositionState(d.POSITION_INACCURATE), this.position_error.emit({ code: 11, message: "Inaccurate position: " + u });
425
- },
426
- // Position requesting callback
427
- () => {
428
- this.setPositionState(d.POSITION_REQUESTING);
429
- },
430
- // Position received callback
431
- (u) => {
432
- this.currentPosition = u, this.positionIsAccurate = this.currentPosition.coords.accuracy <= this.options.maxAccuracy, this.positionState === d.POSITION_TRACKED ? this.setPositionState(d.POSITION_UNTRACKED) : this.positionState !== d.POSITION_UNTRACKED && this.setPositionState(d.POSITION_KNOWN), window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference), this.position_received.emit({
433
- position: this.currentPosition,
434
- selfInvoked: r,
435
- accurate: this.positionIsAccurate
436
- });
437
- }
438
- );
439
- }
440
- /**
441
- * Sets position button state.
442
- *
443
- * @param {PositionStateTypes} state
444
- */
445
- setPositionState(r) {
446
- this.positionState = r;
447
- }
448
- /**
449
- * Handle click on the compass button.
450
- */
451
- onCompassButtonClicked() {
452
- this.setCompassStyle(0), this.mapView.rotate(0), this.mapView.tilt(0), window.removeEventListener("deviceorientation", this.handleDeviceOrientationReference), this.positionState === d.POSITION_TRACKED ? this.setPositionState(d.POSITION_CENTERED) : this.positionState === d.POSITION_UNTRACKED && this.setPositionState(d.POSITION_KNOWN);
453
- }
454
- /**
455
- * Handle click on position button.
456
- * Stops propagation to avoid any map click listeners to fire.
457
- *
458
- * @param {Event} event
459
- */
460
- onPositionButtonClicked(r) {
461
- switch (r.stopPropagation(), this.positionState) {
462
- case d.POSITION_UNKNOWN:
463
- this.mapView.tilt(0), this.watchPosition(!0);
464
- break;
465
- case d.POSITION_KNOWN:
466
- this.mapView.tilt(0), this.panToCurrentPosition();
467
- break;
468
- case d.POSITION_CENTERED:
469
- this.canBeTracked && this.setPositionState(d.POSITION_TRACKED), this.panToCurrentPosition();
470
- break;
471
- case d.POSITION_TRACKED:
472
- this.mapView.tilt(0), this.mapView.rotate(0), this.setCompassStyle(0), this.setPositionState(d.POSITION_CENTERED), this.panToCurrentPosition();
473
- break;
474
- case d.POSITION_UNTRACKED:
475
- this.setPositionState(d.POSITION_TRACKED), this.panToCurrentPosition();
476
- break;
477
- }
478
- }
479
- /**
480
- * Called every time the component has connected to the DOM.
481
- * 1. Assigning the mapView and options attributes.
482
- * 2. Checking for the navigator's state.
483
- * 3. Determining whether the device can be tracked.
484
- * 4. Asking for permission to track the device.
485
- * 5. Styling the compass button.
486
- */
487
- connectedCallback() {
488
- var r;
489
- if (this.mapView = this.mapsindoors.getMapView(), this.options = ve(this.defaultOptions, (r = this.myPositionOptions) !== null && r !== void 0 ? r : {}), oi.isAvailable() === !1) {
490
- this.position_error.emit({ code: 10, message: "Location not available" });
491
- return;
492
- }
493
- const u = this.parser.getDevice().type;
494
- this.canBeTracked = !!(typeof window.DeviceOrientationEvent == "function" && (u === Zi.UAParser.DEVICE.MOBILE || u === Zi.UAParser.DEVICE.TABLET) && this.mapView.rotatable && this.mapView.tiltable), oi.isAlreadyGranted().then((b) => {
495
- b ? this.watchPosition() : this.setPositionState(d.POSITION_UNKNOWN);
496
- }), this.mapView.on("rotateend", () => {
497
- this.setCompassStyle(this.mapView.getBearing());
498
- });
499
- }
500
- componentDidRender() {
501
- this.setCompassStyle(this.mapView.getBearing());
502
- }
503
- /**
504
- * Stops listening for position updates.
505
- */
506
- disconnectedCallback() {
507
- oi.stopListeningForPosition();
508
- }
509
- /**
510
- * Renders the floor selector.
511
- *
512
- * @returns {JSX.Element}
513
- */
514
- render() {
515
- return yi(he, null, yi("div", { class: "mi-my-position" }, yi("button", { class: `mi-my-position__position-button
516
- ${this.positionState === d.POSITION_UNKNOWN || this.positionState === d.POSITION_INACCURATE ? "mi-my-position__position-button--unknown" : ""}
517
- ${this.positionState === d.POSITION_REQUESTING ? "mi-my-position__position-button--requesting" : ""}
518
- ${this.positionState === d.POSITION_KNOWN ? "mi-my-position__position-button--known" : ""}
519
- ${this.positionState === d.POSITION_CENTERED ? "mi-my-position__position-button--centered" : ""}
520
- ${this.positionState === d.POSITION_TRACKED ? "mi-my-position__position-button--tracked" : ""}
521
- ${this.positionState === d.POSITION_UNTRACKED ? "mi-my-position__position-button--untracked" : ""}`, onClick: (r) => this.onPositionButtonClicked(r) }), yi("button", { ref: (r) => this.compassButton = r, class: "mi-my-position__compass-button", onClick: () => this.onCompassButtonClicked() })));
522
- }
523
- };
524
- Ce.style = Se;
525
- export {
526
- Ce as mi_my_position
527
- };
528
- //# sourceMappingURL=mi-my-position.entry-35b014fb.mjs.map