PageSourceSearch

https://www.annoushka.com/static/version1790066675/frontend/Annous…/Klevu_Search/js/klevu/ieUrlPolyfill.min.js

js annoushka.com collected 2026-09-24 20:02:12 UTC 18,764 bytes, 444 lines download raw bytes

vendor: 18,764 bytes, lines 1-444
1/* Disable minification (remove `.min` from URL path) for more info */
2
3(function(self, undefined) {
4    ! function(e) {
5        "use strict";
6
7        function t(t) {
8            return !!t && ("Symbol" in e && "iterator" in e.Symbol && "function" == typeof t[Symbol.iterator] || !! Array.isArray(t))
9        }
10
11        function n(e) {
12            return "from" in Array ? Array.from(e) : Array.prototype.slice.call(e)
13        }! function() {
14            function r(e) {
15                var t = "",
16                    n = !0;
17                return e.forEach(function(e) {
18                    var r = encodeURIComponent(e.name),
19                        a = encodeURIComponent(e.value);
20                    n || (t += "&"), t += r + "=" + a, n = !1
21                }), t.replace(/%20/g, "+")
22            }
23
24            function a(e, t) {
25                var n = e.split("&");
26                t && -1 === n[0].indexOf("=") && (n[0] = "=" + n[0]);
27                var r = [];
28                n.forEach(function(e) {
29                    if (0 !== e.length) {
30                        var t = e.indexOf("=");
31                        if (-1 !== t) var n = e.substring(0, t),
32                            a = e.substring(t + 1);
33                        else n = e, a = "";
34                        n = n.replace(/\+/g, " "), a = a.replace(/\+/g, " "), r.push({
35                            name: n,
36                            value: a
37                        })
38                    }
39                });
40                var a = [];
41                return r.forEach(function(e) {
42                    a.push({
43                        name: decodeURIComponent(e.name),
44                        value: decodeURIComponent(e.value)
45                    })
46                }), a
47            }
48
49            function i(e) {
50                if (c) return new s(e);
51                var t = document.createElement("a");
52                return t.href = e, t
53            }
54
55            function o(e) {
56                var i = this;
57                this._list = [], e === undefined || null === e || (e instanceof o ? this._list = a(String(e)) : "object" == typeof e && t(e) ? n(e).forEach(function(e) {
58                    if (!t(e)) throw TypeError();
59                    var r = n(e);
60                    if (2 !== r.length) throw TypeError();
61                    i._list.push({
62                        name: String(r[0]),
63                        value: String(r[1])
64                    })
65                }) : "object" == typeof e && e ? Object.keys(e).forEach(function(t) {
66                    i._list.push({
67                        name: String(t),
68                        value: String(e[t])
69                    })
70                }) : (e = String(e), "?" === e.substring(0, 1) && (e = e.substring(1)), this._list = a(e))), this._url_object = null, this._setList = function(e) {
71                    u || (i._list = e)
72                };
73                var u = !1;
74                this._update_steps = function() {
75                    u || (u = !0, i._url_object && ("about:" === i._url_object.protocol && -1 !== i._url_object.pathname.indexOf("?") && (i._url_object.pathname = i._url_object.pathname.split("?")[0]), i._url_object.search = r(i._list), u = !1))
76                }
77            }
78
79            function u(e, t) {
80                var n = 0;
81                this.next = function() {
82                    if (n >= e.length) return {
83                        done: !0,
84                        value: undefined
85                    };
86                    var r = e[n++];
87                    return {
88                        done: !1,
89                        value: "key" === t ? r.name : "value" === t ? r.value : [r.name, r.value]
90                    }
91                }
92            }
93
94            function l(t, n) {
95                function r() {
96                    var e = l.href.replace(/#$|\?$|\?(?=#)/g, "");
97                    l.href !== e && (l.href = e)
98                }
99
100                function u() {
101                    m._setList(l.search ? a(l.search.substring(1)) : []), m._update_steps()
102                }
103                if (!(this instanceof e.URL)) throw new TypeError("Failed to construct 'URL': Please use the 'new' operator.");
104                n && (t = function() {
105                    if (c) return new s(t, n).href;
106                    var e;
107                    try {
108                        var r;
109                        if ("[object OperaMini]" === Object.prototype.toString.call(window.operamini) ? (e = document.createElement("iframe"), e.style.display = "none", document.documentElement.appendChild(e), r = e.contentWindow.document) : document.implementation && document.implementation.createHTMLDocument ? r = document.implementation.createHTMLDocument("") : document.implementation && document.implementation.createDocument ? (r = document.implementation.createDocument("http://www.w3.org/1999/xhtml", "html", null), r.documentElement.appendChild(r.createElement("head")), r.documentElement.appendChild(r.createElement("body"))) : window.ActiveXObject && (r = new window.ActiveXObject("htmlfile"), r.write("<head></head><body></body>"), r.close()), !r) throw Error("base not supported");
110                        var a = r.createElement("base");
111                        a.href = n, r.getElementsByTagName("head")[0].appendChild(a);
112                        var i = r.createElement("a");
113                        return i.href = t, i.href
114                    } finally {
115                        e && e.parentNode.removeChild(e)
116                    }
117                }());
118                var l = i(t || ""),
119                    f = function() {
120                        if (!("defineProperties" in Object)) return !1;
121                        try {
122                            var e = {};
123                            return Object.defineProperties(e, {
124                                prop: {
125                                    get: function() {
126                                        return !0
127                                    }
128                                }
129                            }), e.prop
130                        } catch (t) {
131                            return !1
132                        }
133                    }(),
134                    h = f ? this : document.createElement("a"),
135                    m = new o(l.search ? l.search.substring(1) : null);
136                return m._url_object = h, Object.defineProperties(h, {
137                    href: {
138                        get: function() {
139                            return l.href
140                        },
141                        set: function(e) {
142                            l.href = e, r(), u()
143                        },
144                        enumerable: !0,
145                        configurable: !0
146                    },
147                    origin: {
148                        get: function() {
149                            return "data:" === this.protocol.toLowerCase() ? null : "origin" in l ? l.origin : this.protocol + "//" + this.host
150                        },
151                        enumerable: !0,
152                        configurable: !0
153                    },
154                    protocol: {
155                        get: function() {
156                            return l.protocol
157                        },
158                        set: function(e) {
159                            l.protocol = e
160                        },
161                        enumerable: !0,
162                        configurable: !0
163                    },
164                    username: {
165                        get: function() {
166                            return l.username
167                        },
168                        set: function(e) {
169                            l.username = e
170                        },
171                        enumerable: !0,
172                        configurable: !0
173                    },
174                    password: {
175                        get: function() {
176                            return l.password
177                        },
178                        set: function(e) {
179                            l.password = e
180                        },
181                        enumerable: !0,
182                        configurable: !0
183                    },
184                    host: {
185                        get: function() {
186                            var e = {
187                                "http:": /:80$/,
188                                "https:": /:443$/,
189                                "ftp:": /:21$/
190                            }[l.protocol];
191                            return e ? l.host.replace(e, "") : l.host
192                        },
193                        set: function(e) {
194                            l.host = e
195                        },
196                        enumerable: !0,
197                        configurable: !0
198                    },
199                    hostname: {
200                        get: function() {
201                            return l.hostname
202                        },
203                        set: function(e) {
204                            l.hostname = e
205                        },
206                        enumerable: !0,
207                        configurable: !0
208                    },
209                    port: {
210                        get: function() {
211                            return l.port
212                        },
213                        set: function(e) {
214                            l.port = e
215                        },
216                        enumerable: !0,
217                        configurable: !0
218                    },
219                    pathname: {
220                        get: function() {
221                            return "/" !== l.pathname.charAt(0) ? "/" + l.pathname : l.pathname
222                        },
223                        set: function(e) {
224                            l.pathname = e
225                        },
226                        enumerable: !0,
227                        configurable: !0
228                    },
229                    search: {
230                        get: function() {
231                            return l.search
232                        },
233                        set: function(e) {
234                            l.search !== e && (l.search = e, r(), u())
235                        },
236                        enumerable: !0,
237                        configurable: !0
238                    },
239                    searchParams: {
240                        get: function() {
241                            return m
242                        },
243                        enumerable: !0,
244                        configurable: !0
245                    },
246                    hash: {
247                        get: function() {
248                            return l.hash
249                        },
250                        set: function(e) {
251                            l.hash = e, r()
252                        },
253                        enumerable: !0,
254                        configurable: !0
255                    },
256                    toString: {
257                        value: function() {
258                            return l.toString()
259                        },
260                        enumerable: !1,
261                        configurable: !0
262                    },
263                    valueOf: {
264                        value: function() {
265                            return l.valueOf()
266                        },
267                        enumerable: !1,
268                        configurable: !0
269                    }
270                }), h
271            }
272            var c, s = e.URL;
273            try {
274                if (s) {
275                    if ("searchParams" in (c = new e.URL("http://example.com"))) {
276                        var f = new l("http://example.com");
277                        if (f.search = "a=1&b=2", "http://example.com/?a=1&b=2" === f.href && (f.search = "", "http://example.com/" === f.href)) return
278                    }
279                    "href" in c || (c = undefined), c = undefined
280                }
281            } catch (m) {}
282            if (Object.defineProperties(o.prototype, {
283                append: {
284                    value: function(e, t) {
285                        this._list.push({
286                            name: e,
287                            value: t
288                        }), this._update_steps()
289                    },
290                    writable: !0,
291                    enumerable: !0,
292                    configurable: !0
293                },
294                "delete": {
295                    value: function(e) {
296                        for (var t = 0; t < this._list.length;) this._list[t].name === e ? this._list.splice(t, 1) : ++t;
297                        this._update_steps()
298                    },
299                    writable: !0,
300                    enumerable: !0,
301                    configurable: !0
302                },
303                get: {
304                    value: function(e) {
305                        for (var t = 0; t < this._list.length; ++t)
306                            if (this._list[t].name === e) return this._list[t].value;
307                        return null
308                    },
309                    writable: !0,
310                    enumerable: !0,
311                    configurable: !0
312                },
313                getAll: {
314                    value: function(e) {
315                        for (var t = [], n = 0; n < this._list.length; ++n) this._list[n].name === e && t.push(this._list[n].value);
316                        return t
317                    },
318                    writable: !0,
319                    enumerable: !0,
320                    configurable: !0
321                },
322                has: {
323                    value: function(e) {
324                        for (var t = 0; t < this._list.length; ++t)
325                            if (this._list[t].name === e) return !0;
326                        return !1
327                    },
328                    writable: !0,
329                    enumerable: !0,
330                    configurable: !0
331                },
332                set: {
333                    value: function(e, t) {
334                        for (var n = !1, r = 0; r < this._list.length;) this._list[r].name === e ? n ? this._list.splice(r, 1) : (this._list[r].value = t, n = !0, ++r) : ++r;
335                        n || this._list.push({
336                            name: e,
337                            value: t
338                        }), this._update_steps()
339                    },
340                    writable: !0,
341                    enumerable: !0,
342                    configurable: !0
343                },
344                entries: {
345                    value: function() {
346                        return new u(this._list, "key+value")
347                    },
348                    writable: !0,
349                    enumerable: !0,
350                    configurable: !0
351                },
352                keys: {
353                    value: function() {
354                        return new u(this._list, "key")
355                    },
356                    writable: !0,
357                    enumerable: !0,
358                    configurable: !0
359                },
360                values: {
361                    value: function() {
362                        return new u(this._list, "value")
363                    },
364                    writable: !0,
365                    enumerable: !0,
366                    configurable: !0
367                },
368                forEach: {
369                    value: function(e) {
370                        var t = arguments.length > 1 ? arguments[1] : undefined;
371                        this._list.forEach(function(n) {
372                            e.call(t, n.value, n.name)
373                        })
374                    },
375                    writable: !0,
376                    enumerable: !0,
377                    configurable: !0
378                },
379                toString: {
380                    value: function() {
381                        return r(this._list)
382                    },
383                    writable: !0,
384                    enumerable: !1,
385                    configurable: !0
386                },
387                sort: {
388                    value: function p() {
389                        for (var e = this.entries(), t = e.next(), n = [], r = {}; !t.done;) {
390                            var a = t.value,
391                                i = a[0];
392                            n.push(i), Object.prototype.hasOwnProperty.call(r, i) || (r[i] = []), r[i].push(a[1]), t = e.next()
393                        }
394                        n.sort();
395                        for (var o = 0; o < n.length; o++) this["delete"](n[o]);
396                        for (var u = 0; u < n.length; u++) i = n[u], this.append(i, r[i].shift())
397                    }
398                }
399            }), "Symbol" in e && "iterator" in e.Symbol && (Object.defineProperty(o.prototype, e.Symbol.iterator, {
400                value: o.prototype.entries,
401                writable: !0,
402                enumerable: !0,
403                configurable: !0
404            }), Object.defineProperty(u.prototype, e.Symbol.iterator, {
405                value: function() {
406                    return this
407                },
408                writable: !0,
409                enumerable: !0,
410                configurable: !0
411            })), s)
412                for (var h in s) Object.prototype.hasOwnProperty.call(s, h) && "function" == typeof s[h] && (l[h] = s[h]);
413            e.URL = l, e.URLSearchParams = o
414        }(),
415            function() {
416                if ("1" !== new e.URLSearchParams([
417                    ["a", 1]
418                ]).get("a") || "1" !== new e.URLSearchParams({
419                    a: 1
420                }).get("a")) {
421                    var r = e.URLSearchParams;
422                    e.URLSearchParams = function(e) {
423                        if (e && "object" == typeof e && t(e)) {
424                            var a = new r;
425                            return n(e).forEach(function(e) {
426                                if (!t(e)) throw TypeError();
427                                var r = n(e);
428                                if (2 !== r.length) throw TypeError();
429                                a.append(r[0], r[1])
430                            }), a
431                        }
432                        return e && "object" == typeof e ? (a = new r, Object.keys(e).forEach(function(t) {
433                            a.set(t, e[t])
434                        }), a) : new r(e)
435                    }
436                }
437            }()
438    }(self);
439    ! function(t) {
440        t.URL.prototype.toJSON = function n() {
441            return this.href
442        }
443    }(self);
444})('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.