1/*! nouislider - 10.0.0 */ 2 3! function(a) { 4 "function" == typeof define && define.amd ? define([], a) : "object" == typeof exports ? module.exports = a() : window.noUiSlider = a() 5}(function() { 6 "use strict"; 7 8 function a(a) { 9 return "object" == typeof a && "function" == typeof a.to && "function" == typeof a.from 10 } 11 12 function b(a) { 13 a.parentElement.removeChild(a) 14 } 15 16 function c(a) { 17 a.preventDefault() 18 } 19 20 function d(a) { 21 return a.filter(function(a) { 22 return this[a] ? !1 : this[a] = !0 23 }, {}) 24 } 25 26 function e(a, b) { 27 return Math.round(a / b) * b 28 } 29 30 function f(a, b) { 31 var c = a.getBoundingClientRect(), 32 d = a.ownerDocument, 33 e = d.documentElement, 34 f = o(d); 35 return /webkit.*Chrome.*Mobile/i.test(navigator.userAgent) && (f.x = 0), b ? c.top + f.y - e.clientTop : c.left + f.x - e.clientLeft 36 } 37 38 function g(a) { 39 return "number" == typeof a && !isNaN(a) && isFinite(a) 40 } 41 42 function h(a, b, c) { 43 c > 0 && (l(a, b), setTimeout(function() { 44 m(a, b) 45 }, c)) 46 } 47 48 function i(a) { 49 return Math.max(Math.min(a, 100), 0) 50 } 51 52 function j(a) { 53 return Array.isArray(a) ? a : [a] 54 } 55 56 function k(a) { 57 a = String(a); 58 var b = a.split("."); 59 return b.length > 1 ? b[1].length : 0 60 } 61 62 function l(a, b) { 63 a.classList ? a.classList.add(b) : a.className += " " + b 64 } 65 66 function m(a, b) { 67 a.classList ? a.classList.remove(b) : a.className = a.className.replace(new RegExp("(^|\\b)" + b.split(" ").join("|") + "(\\b|$)", "gi"), " ") 68 } 69 70 function n(a, b) { 71 return a.classList ? a.classList.contains(b) : new RegExp("\\b" + b + "\\b").test(a.className) 72 } 73 74 function o(a) { 75 var b = void 0 !== window.pageXOffset, 76 c = "CSS1Compat" === (a.compatMode || ""), 77 d = b ? window.pageXOffset : c ? a.documentElement.scrollLeft : a.body.scrollLeft, 78 e = b ? window.pageYOffset : c ? a.documentElement.scrollTop : a.body.scrollTop; 79 return { 80 x: d, 81 y: e 82 } 83 } 84 85 function p() { 86 return window.navigator.pointerEnabled ? { 87 start: "pointerdown", 88 move: "pointermove", 89 end: "pointerup" 90 } : window.navigator.msPointerEnabled ? { 91 start: "MSPointerDown", 92 move: "MSPointerMove", 93 end: "MSPointerUp" 94 } : { 95 start: "mousedown touchstart", 96 move: "mousemove touchmove", 97 end: "mouseup touchend" 98 } 99 } 100 101 function q() { 102 var a = !1; 103 try { 104 var b = Object.defineProperty({}, "passive", { 105 get: function() { 106 a = !0 107 } 108 }); 109 window.addEventListener("test", null, b) 110 } catch (c) {} 111 return a 112 } 113 114 function r() { 115 return window.CSS && CSS.supports && CSS.supports("touch-action", "none") 116 } 117 118 function s(a, b) { 119 return 100 / (b - a) 120 } 121 122 function t(a, b) { 123 return 100 * b / (a[1] - a[0]) 124 } 125 126 function u(a, b) { 127 return t(a, a[0] < 0 ? b + Math.abs(a[0]) : b - a[0]) 128 } 129 130 function v(a, b) { 131 return b * (a[1] - a[0]) / 100 + a[0] 132 } 133 134 function w(a, b) { 135 for (var c = 1; a >= b[c];) c += 1; 136 return c 137 } 138 139 function x(a, b, c) { 140 if (c >= a.slice(-1)[0]) return 100; 141 var d, e, f, g, h = w(c, a); 142 return d = a[h - 1], e = a[h], f = b[h - 1], g = b[h], f + u([d, e], c) / s(f, g) 143 } 144 145 function y(a, b, c) { 146 if (c >= 100) return a.slice(-1)[0]; 147 var d, e, f, g, h = w(c, b); 148 return d = a[h - 1], e = a[h], f = b[h - 1], g = b[h], v([d, e], (c - f) * s(f, g)) 149 } 150 151 function z(a, b, c, d) { 152 if (100 === d) return d; 153 var f, g, h = w(d, a); 154 return c ? (f = a[h - 1], g = a[h], d - f > (g - f) / 2 ? g : f) : b[h - 1] ? a[h - 1] + e(d - a[h - 1], b[h - 1]) : d 155 } 156 157 function A(a, b, c) { 158 var d; 159 if ("number" == typeof b && (b = [b]), "[object Array]" !== Object.prototype.toString.call(b)) throw new Error("noUiSlider (" + $ + "): 'range' contains invali
vendor: 6,823 bytes, lines 159-323
159d value."); 160 if (d = "min" === a ? 0 : "max" === a ? 100 : parseFloat(a), !g(d) || !g(b[0])) throw new Error("noUiSlider (" + $ + "): 'range' value isn't numeric."); 161 c.xPct.push(d), c.xVal.push(b[0]), d ? c.xSteps.push(isNaN(b[1]) ? !1 : b[1]) : isNaN(b[1]) || (c.xSteps[0] = b[1]), c.xHighestCompleteStep.push(0) 162 } 163 164 function B(a, b, c) { 165 if (!b) return !0; 166 c.xSteps[a] = t([c.xVal[a], c.xVal[a + 1]], b) / s(c.xPct[a], c.xPct[a + 1]); 167 var d = (c.xVal[a + 1] - c.xVal[a]) / c.xNumSteps[a], 168 e = Math.ceil(Number(d.toFixed(3)) - 1), 169 f = c.xVal[a] + c.xNumSteps[a] * e; 170 c.xHighestCompleteStep[a] = f 171 } 172 173 function C(a, b, c) { 174 this.xPct = [], this.xVal = [], this.xSteps = [c || !1], this.xNumSteps = [!1], this.xHighestCompleteStep = [], this.snap = b; 175 var d, e = []; 176 for (d in a) a.hasOwnProperty(d) && e.push([a[d], d]); 177 for (e.sort(e.length && "object" == typeof e[0][0] ? function(a, b) { 178 return a[0][0] - b[0][0] 179 } : function(a, b) { 180 return a[0] - b[0] 181 }), d = 0; d < e.length; d++) A(e[d][1], e[d][0], this); 182 for (this.xNumSteps = this.xSteps.slice(0), d = 0; d < this.xNumSteps.length; d++) B(d, this.xNumSteps[d], this) 183 } 184 185 function D(b) { 186 if (a(b)) return !0; 187 throw new Error("noUiSlider (" + $ + "): 'format' requires 'to' and 'from' methods.") 188 } 189 190 function E(a, b) { 191 if (!g(b)) throw new Error("noUiSlider (" + $ + "): 'step' is not numeric."); 192 a.singleStep = b 193 } 194 195 function F(a, b) { 196 if ("object" != typeof b || Array.isArray(b)) throw new Error("noUiSlider (" + $ + "): 'range' is not an object."); 197 if (void 0 === b.min || void 0 === b.max) throw new Error("noUiSlider (" + $ + "): Missing 'min' or 'max' in 'range'."); 198 if (b.min === b.max) throw new Error("noUiSlider (" + $ + "): 'range' 'min' and 'max' cannot be equal."); 199 a.spectrum = new C(b, a.snap, a.singleStep) 200 } 201 202 function G(a, b) { 203 if (b = j(b), !Array.isArray(b) || !b.length) throw new Error("noUiSlider (" + $ + "): 'start' option is incorrect."); 204 a.handles = b.length, a.start = b 205 } 206 207 function H(a, b) { 208 if (a.snap = b, "boolean" != typeof b) throw new Error("noUiSlider (" + $ + "): 'snap' option must be a boolean.") 209 } 210 211 function I(a, b) { 212 if (a.animate = b, "boolean" != typeof b) throw new Error("noUiSlider (" + $ + "): 'animate' option must be a boolean.") 213 } 214 215 function J(a, b) { 216 if (a.animationDuration = b, "number" != typeof b) throw new Error("noUiSlider (" + $ + "): 'animationDuration' option must be a number.") 217 } 218 219 function K(a, b) { 220 var c, d = [!1]; 221 if ("lower" === b ? b = [!0, !1] : "upper" === b && (b = [!1, !0]), b === !0 || b === !1) { 222 for (c = 1; c < a.handles; c++) d.push(b); 223 d.push(!1) 224 } else { 225 if (!Array.isArray(b) || !b.length || b.length !== a.handles + 1) throw new Error("noUiSlider (" + $ + "): 'connect' option doesn't match handle count."); 226 d = b 227 } 228 a.connect = d 229 } 230 231 function L(a, b) { 232 switch (b) { 233 case "horizontal": 234 a.ort = 0; 235 break; 236 case "vertical": 237 a.ort = 1; 238 break; 239 default: 240 throw new Error("noUiSlider (" + $ + "): 'orientation' option is invalid.") 241 } 242 } 243 244 function M(a, b) { 245 if (!g(b)) throw new Error("noUiSlider (" + $ + "): 'margin' option must be numeric."); 246 if (0 !== b && (a.margin = a.spectrum.getMargin(b), !a.margin)) throw new Error("noUiSlider (" + $ + "): 'margin' option is only supported on linear sliders.") 247 } 248 249 function N(a, b) { 250 if (!g(b)) throw new Error("noUiSlider (" + $ + "): 'limit' option must be numeric."); 251 if (a.limit = a.spectrum.getMargin(b), !a.limit || a.handles < 2) throw new Error("noUiSlider (" + $ + "): 'limit' option is only supported on linear sliders with 2 or more handles.") 252 } 253 254 function O(a, b) { 255 if (!g(b)) throw new Error("noUiSlider (" + $ + "): 'padding' option must be numeric."); 256 if (0 !== b) { 257 if (a.padding = a.spectrum.getMargin(b), !a.padding) throw new Error("noUiSlider (" + $ + "): 'padding' option is only supported on linear sliders."); 258 if (a.padding < 0) throw new Error("noUiSlider (" + $ + "): 'padding' option must be a positive number."); 259 if (a.padding >= 50) throw new Error("noUiSlider (" + $ + "): 'padding' option must be less than half the range.") 260 } 261 } 262 263 function P(a, b) { 264 switch (b) { 265 case "ltr": 266 a.dir = 0; 267 break; 268 case "rtl": 269 a.dir = 1; 270 break; 271 default: 272 throw new Error("noUiSlider (" + $ + "): 'direction' option was not recognized.") 273 } 274 } 275 276 function Q(a, b) { 277 if ("string" != typeof b) throw new Error("noUiSlider (" + $ + "): 'behaviour' must be a string containing options."); 278 var c = b.indexOf("tap") >= 0, 279 d = b.indexOf("drag") >= 0, 280 e = b.indexOf("fixed") >= 0, 281 f = b.indexOf("snap") >= 0, 282 g = b.indexOf("hover") >= 0; 283 if (e) { 284 if (2 !== a.handles) throw new Error("noUiSlider (" + $ + "): 'fixed' behaviour must be used with 2 handles"); 285 M(a, a.start[1] - a.start[0]) 286 } 287 a.events = { 288 tap: c || f, 289 drag: d, 290 fixed: e, 291 snap: f, 292 hover: g 293 } 294 } 295 296 function R(a, b) { 297 if (b !== !1) 298 if (b === !0) { 299 a.tooltips = []; 300 for (var c = 0; c < a.handles; c++) a.tooltips.push(!0) 301 } else { 302 if (a.tooltips = j(b), a.tooltips.length !== a.handles) throw new Error("noUiSlider (" + $ + "): must pass a formatter for all handles."); 303 a.tooltips.forEach(function(a) { 304 if ("boolean" != typeof a && ("object" != typeof a || "function" != typeof a.to)) throw new Error("noUiSlider (" + $ + "): 'tooltips' must be passed a formatter or 'false'.") 305 }) 306 } 307 } 308 309 function S(a, b) { 310 a.ariaFormat = b, D(b) 311 } 312 313 function T(a, b) { 314 a.format = b, D(b) 315 } 316 317 function U(a, b) { 318 if (void 0 !== b && "string" != typeof b && b !== !1) throw new Error("noUiSlider (" + $ + "): 'cssPrefix' must be a string or `false`."); 319 a.cssPrefix = b 320 } 321 322 function V(a, b) { 323 if (void 0 !== b && "object" != typeof b) throw new Error("noUiSlider (" + $ + "): 'cssClasse
323s' must be an object."); 324 if ("string" == typeof a.cssPrefix) { 325 a.cssClasses = {}; 326 for (var c in b) b.hasOwnProperty(c) && (a.cssClasses[c] = a.cssPrefix + b[c]) 327 } else a.cssClasses = b 328 } 329 330 function W(a, b) { 331 if (b !== !0 && b !== !1) throw new Error("noUiSlider (" + $ + "): 'useRequestAnimationFrame' option should be true (default) or false."); 332 a.useRequestAnimationFrame = b 333 } 334 335 function X(a) { 336 var b = { 337 margin: 0, 338 limit: 0, 339 padding: 0, 340 animate: !0, 341 animationDuration: 300, 342 ariaFormat: _, 343 format: _ 344 }, 345 c = { 346 step: { 347 r: !1, 348 t: E 349 }, 350 start: { 351 r: !0, 352 t: G 353 }, 354 connect: { 355 r: !0, 356 t: K 357 }, 358 direction: { 359 r: !0, 360 t: P 361 }, 362 snap: { 363 r: !1, 364 t: H 365 }, 366 animate: { 367 r: !1, 368 t: I 369 }, 370 animationDuration: { 371 r: !1, 372 t: J 373 }, 374 range: { 375 r: !0, 376 t: F 377 }, 378 orientation: { 379 r: !1, 380 t: L 381 }, 382 margin: { 383 r: !1, 384 t: M 385 }, 386 limit: { 387 r: !1, 388 t: N 389 }, 390 padding: { 391 r: !1, 392 t: O 393 }, 394 behaviour: { 395 r: !0, 396 t: Q 397 }, 398 ariaFormat: { 399 r: !1, 400 t: S 401 }, 402 format: { 403 r: !1, 404 t: T 405 }, 406 tooltips: { 407 r: !1, 408 t: R 409 }, 410 cssPrefix: { 411 r: !1, 412 t: U 413 }, 414 cssClasses: { 415 r: !1, 416 t: V 417 }, 418 useRequestAnimationFrame: { 419 r: !1, 420 t: W 421 } 422 }, 423 d = { 424 connect: !1, 425 direction: "ltr", 426 behaviour: "tap", 427 orientation: "horizontal", 428 cssPrefix: "noUi-", 429 cssClasses: { 430 target: "target", 431 base: "base", 432 origin: "origin", 433 handle: "handle", 434 handleLower: "handle-lower", 435 handleUpper: "handle-upper", 436 horizontal: "horizontal", 437 vertical: "vertical", 438 background: "background", 439 connect: "connect", 440 ltr: "ltr", 441 rtl: "rtl", 442 draggable: "draggable", 443 drag: "state-drag", 444 tap: "state-tap", 445 active: "active", 446 tooltip: "tooltip", 447 pips: "pips", 448 pipsHorizontal: "pips-horizontal", 449 pipsVertical: "pips-vertical", 450 marker: "marker", 451 markerHorizontal: "marker-horizontal", 452 markerVertical: "marker-vertical", 453 markerNormal: "marker-normal", 454 markerLarge: "marker-large", 455 markerSub: "marker-sub", 456 value: "value", 457 valueHorizontal: "value-horizontal", 458 valueVertical: "value-vertical", 459 valueNormal: "value-normal", 460 valueLarge: "value-large", 461 valueSub: "value-sub" 462 }, 463 useRequestAnimationFrame: !0 464 }; 465 a.format && !a.ariaFormat && (a.ariaFormat = a.format), Object.keys(c).forEac
465h(function(e) { 466 if (void 0 === a[e] && void 0 === d[e]) { 467 if (c[e].r) throw new Error("noUiSlider (" + $ + "): '" + e + "' is required."); 468 return !0 469 } 470 c[e].t(b, void 0 === a[e] ? d[e] : a[e]) 471 }), b.pips = a.pips; 472 var e = [ 473 ["left", "top"], 474 ["right", "bottom"] 475 ]; 476 return b.style = e[b.dir][b.ort], b.styleOposite = e[b.dir ? 0 : 1][b.ort], b 477 } 478 479 function Y(a, e, g) { 480 function k(a, b) { 481 var c = xa.createElement("div"); 482 return b && l(c, b), a.appendChild(c), c 483 } 484 485 function s(a, b) { 486 var c = k(a, e.cssClasses.origin), 487 d = k(c, e.cssClasses.handle); 488 return d.setAttribute("data-handle", b), d.setAttribute("tabindex", "0"), d.setAttribute("role", "slider"), d.setAttribute("aria-orientation", e.ort ? "vertical" : "horizontal"), 0 === b ? l(d, e.cssClasses.handleLower) : b === e.handles - 1 && l(d, e.cssClasses.handleUpper), c 489 } 490 491 function t(a, b) { 492 return b ? k(a, e.cssClasses.connect) : !1 493 } 494 495 function u(a, b) { 496 ia = [], ja = [], ja.push(t(b, a[0])); 497 for (var c = 0; c < e.handles; c++) ia.push(s(b, c)), ra[c] = c, ja.push(t(b, a[c + 1])) 498 } 499 500 function v(a) { 501 l(a, e.cssClasses.target), 0 === e.dir ? l(a, e.cssClasses.ltr) : l(a, e.cssClasses.rtl), 0 === e.ort ? l(a, e.cssClasses.horizontal) : l(a, e.cssClasses.vertical), ha = k(a, e.cssClasses.base) 502 } 503 504 function w(a, b) { 505 return e.tooltips[b] ? k(a.firstChild, e.cssClasses.tooltip) : !1 506 } 507 508 function x() { 509 var a = ia.map(w); 510 ea("update", function(b, c, d) { 511 if (a[c]) { 512 var f = b[c]; 513 e.tooltips[c] !== !0 && (f = e.tooltips[c].to(d[c])), a[c].innerHTML = f 514 } 515 }) 516 } 517 518 function y() { 519 ea("update", function(a, b, c, d, f) { 520 ra.forEach(function(a) { 521 var b = ia[a], 522 d = S(qa, a, 0, !0, !0, !0), 523 g = S(qa, a, 100, !0, !0, !0), 524 h = f[a], 525 i = e.ariaFormat.to(c[a]); 526 b.children[0].setAttribute("aria-valuemin", d.toFixed(1)), b.children[0].setAttribute("aria-valuemax", g.toFixed(1)), b.children[0].setAttribute("aria-valuenow", h.toFixed(1)), b.children[0].setAttribute("aria-valuetext", i) 527 }) 528 }) 529 } 530 531 function z(a, b, c) { 532 if ("range" === a || "steps" === a) return ta.xVal; 533 if ("count" === a) { 534 if (!b) throw new Error("noUiSlider (" + $ + "): 'values' required for mode 'count'."); 535 var d, e = 100 / (b - 1), 536 f = 0; 537 for (b = []; 538 (d = f++ * e) <= 100;) b.push(d); 539 a = "positions" 540 } 541 return "positions" === a ? b.map(function(a) { 542 return ta.fromStepping(c ? ta.getStep(a) : a) 543 }) : "values" === a ? c ? b.map(function(a) { 544 return ta.fromStepping(ta.getStep(ta.toStepping(a))) 545 }) : b : void 0 546 } 547 548 function A(a, b, c) { 549 function e(a, b) { 550 return (a + b).toFixed(7) / 1 551 } 552 var f = {}, 553 g = ta.xVal[0], 554 h = ta.xVal[ta.xVal.length - 1], 555 i = !1, 556 j = !1, 557 k = 0; 558 return c = d(c.slice().sort(function(a, b) { 559 return a - b 560 })), c[0] !== g && (c.unshift(g), i = !0), c[c.length - 1] !== h && (c.push(h), j = !0), c.forEach(function(d, g) { 561 var h, l, m, n, o, p, q, r, s, t, u = d, 562 v = c[g + 1]; 563 if ("steps" === b && (h = ta.xNumSteps[g]), h || (h = v - u), u !== !1 && void 0 !== v) 564 for (h = Math.max(h, 1e-7), l = u; v >= l; l = e(l, h)) { 565 for (n = ta.toStepping(l), o = n - k, r = o / a, s = Math.round(r), t = o / s, m = 1; s >= m; m += 1) p = k + m * t, f[p.toFixed(5)] = ["x", 0]; 566 q = c.indexOf(l) > -1 ? 1 : "steps" === b ? 2 : 0, !g && i && (q = 0), l === v && j || (f[n.toFixed(5)] = [l, q]), k = n 567 } 568 }), f 569 } 570 571 function B(a, b, c) { 572 function d(a, b) {
573 var c = b === e.cssClasses.value, 574 d = c ? j : m, 575 f = c ? h : i; 576 return b + " " + d[e.ort] + " " + f[a] 577 } 578 579 function f(a, f) { 580 f[1] = f[1] && b ? b(f[0], f[1]) : f[1]; 581 var h = k(g, !1); 582 h.className = d(f[1], e.cssClasses.marker), h.style[e.style] = a + "%", f[1] && (h = k(g, !1), h.className = d(f[1], e.cssClasses.value), h.style[e.style] = a + "%", h.innerText = c.to(f[0])) 583 } 584 var g = xa.createElement("div"), 585 h = [e.cssClasses.valueNormal, e.cssClasses.valueLarge, e.cssClasses.valueSub], 586 i = [e.cssClasses.markerNormal, e.cssClasses.markerLarge, e.cssClasses.markerSub], 587 j = [e.cssClasses.valueHorizontal, e.cssClasses.valueVertical], 588 m = [e.cssClasses.markerHorizontal, e.cssClasses.markerVertical]; 589 return l(g, e.cssClasses.pips), l(g, 0 === e.ort ? e.cssClasses.pipsHorizontal : e.cssClasses.pipsVertical), Object.keys(a).forEach(function(b) { 590 f(b, a[b]) 591 }), g 592 } 593 594 function C() { 595 la && (b(la), la = null) 596 } 597 598 function D(a) { 599 C(); 600 var b = a.mode, 601 c = a.density || 1, 602 d = a.filter || !1, 603 e = a.values || !1, 604 f = a.stepped || !1, 605 g = z(b, e, f), 606 h = A(c, b, g), 607 i = a.format || { 608 to: Math.round 609 }; 610 return la = pa.appendChild(B(h, d, i)) 611 } 612 613 function E() { 614 var a = ha.getBoundingClientRect(), 615 b = "offset" + ["Width", "Height"][e.ort]; 616 return 0 === e.ort ? a.width || ha[b] : a.height || ha[b] 617 } 618 619 function F(a, b, c, d) { 620 var f = function(b) { 621 return pa.hasAttribute("disabled") ? !1 : n(pa, e.cssClasses.tap) ? !1 : (b = G(b, d.pageOffset)) ? a === ma.start && void 0 !== b.buttons && b.buttons > 1 ? !1 : d.hover && b.buttons ? !1 : (oa || b.preventDefault(), b.calcPoint = b.points[e.ort], void c(b, d)) : !1 622 }, 623 g = []; 624 return a.split(" ").forEach(function(a) { 625 b.addEventListener(a, f, oa ? { 626 passive: !0 627 } : !1), g.push([a, f]) 628 }), g 629 } 630 631 function G(a, b) { 632 var c, d, e = 0 === a.type.indexOf("touch"), 633 f = 0 === a.type.indexOf("mouse"), 634 g = 0 === a.type.indexOf("pointer"); 635 if (0 === a.type.indexOf("MSPointer") && (g = !0), e) { 636 if (a.touches.length > 1) return !1; 637 c = a.changedTouches[0].pageX, d = a.changedTouches[0].pageY 638 } 639 return b = b || o(xa), (f || g) && (c = a.clientX + b.x, d = a.clientY + b.y), a.pageOffset = b, a.points = [c, d], a.cursor = f || g, a 640 } 641 642 function H(a) { 643 var b = a - f(ha, e.ort), 644 c = 100 * b / E(); 645 return e.dir ? 100 - c : c 646 } 647 648 function I(a) { 649 var b = 100, 650 c = !1; 651 return ia.forEach(function(d, e) { 652 if (!d.hasAttribute("disabled")) { 653 var f = Math.abs(qa[e] - a); 654 b > f && (c = e, b = f) 655 } 656 }), c 657 } 658 659 function J(a, b, c, d) { 660 var e = c.slice(), 661 f = [!a, a], 662 g = [a, !a]; 663 d = d.slice(), a && d.reverse(), d.length > 1 ? d.forEach(function(a, c) { 664 var d = S(e, a, e[a] + b, f[c], g[c], !1); 665 d === !1 ? b = 0 : (b = d - e[a], e[a] = d) 666 }) : f = g = [!0]; 667 var h = !1; 668 d.forEach(function(a, d) { 669 h = W(a, c[a] + b, f[d], g[d]) || h 670 }), h && d.forEach(function(a) { 671 K("update", a), K("slide", a) 672 }) 673 } 674 675 function K(a, b, c) {
676 Object.keys(va).forEach(function(d) { 677 var f = d.split(".")[0]; 678 a === f && va[d].forEach(function(a) { 679 a.call(ka, ua.map(e.format.to), b, ua.slice(), c || !1, qa.slice()) 680 }) 681 }) 682 } 683 684 function L(a, b) { 685 "mouseout" === a.type && "HTML" === a.target.nodeName && null === a.relatedTarget && N(a, b) 686 } 687 688 function M(a, b) { 689 if (-1 === navigator.appVersion.indexOf("MSIE 9") && 0 === a.buttons && 0 !== b.buttonsProperty) return N(a, b); 690 var c = (e.dir ? -1 : 1) * (a.calcPoint - b.startCalcPoint), 691 d = 100 * c / b.baseSize; 692 J(c > 0, d, b.locations, b.handleNumbers) 693 } 694 695 function N(a, b) { 696 sa && (m(sa, e.cssClasses.active), sa = !1), a.cursor && (za.style.cursor = "", za.removeEventListener("selectstart", c)), wa.forEach(function(a) { 697 ya.removeEventListener(a[0], a[1]) 698 }), m(pa, e.cssClasses.drag), V(), b.handleNumbers.forEach(function(a) { 699 K("change", a), K("set", a), K("end", a) 700 }) 701 } 702 703 function O(a, b) { 704 if (1 === b.handleNumbers.length) { 705 var d = ia[b.handleNumbers[0]]; 706 if (d.hasAttribute("disabled")) return !1; 707 sa = d.children[0], l(sa, e.cssClasses.active) 708 } 709 a.stopPropagation(); 710 var f = F(ma.move, ya, M, { 711 startCalcPoint: a.calcPoint, 712 baseSize: E(), 713 pageOffset: a.pageOffset, 714 handleNumbers: b.handleNumbers, 715 buttonsProperty: a.buttons, 716 locations: qa.slice() 717 }), 718 g = F(ma.end, ya, N, { 719 handleNumbers: b.handleNumbers 720 }), 721 h = F("mouseout", ya, L, { 722 handleNumbers: b.handleNumbers 723 }); 724 wa = f.concat(g, h), a.cursor && (za.style.cursor = getComputedStyle(a.target).cursor, ia.length > 1 && l(pa, e.cssClasses.drag), za.addEventListener("selectstart", c, !1)), b.handleNumbers.forEach(function(a) { 725 K("start", a) 726 }) 727 } 728 729 function P(a) { 730 a.stopPropagation(); 731 var b = H(a.calcPoint), 732 c = I(b); 733 return c === !1 ? !1 : (e.events.snap || h(pa, e.cssClasses.tap, e.animationDuration), W(c, b, !0, !0), V(), K("slide", c, !0), K("update", c, !0), K("change", c, !0), K("set", c, !0), void(e.events.snap && O(a, { 734 handleNumbers: [c] 735 }))) 736 } 737 738 function Q(a) { 739 var b = H(a.calcPoint), 740 c = ta.getStep(b), 741 d = ta.fromStepping(c); 742 Object.keys(va).forEach(function(a) { 743 "hover" === a.split(".")[0] && va[a].forEach(function(a) { 744 a.call(ka, d) 745 }) 746 }) 747 } 748 749 function R(a) { 750 a.fixed || ia.forEach(function(a, b) { 751 F(ma.start, a.children[0], O, { 752 handleNumbers: [b] 753 }) 754 }), a.tap && F(ma.start, ha, P, {}), a.hover && F(ma.move, ha, Q, {
755 hover: !0 756 }), a.drag && ja.forEach(function(b, c) { 757 if (b !== !1 && 0 !== c && c !== ja.length - 1) { 758 var d = ia[c - 1], 759 f = ia[c], 760 g = [b]; 761 l(b, e.cssClasses.draggable), a.fixed && (g.push(d.children[0]), g.push(f.children[0])), g.forEach(function(a) { 762 F(ma.start, a, O, { 763 handles: [d, f], 764 handleNumbers: [c - 1, c] 765 }) 766 }) 767 } 768 }) 769 } 770 771 function S(a, b, c, d, f, g) { 772 return ia.length > 1 && (d && b > 0 && (c = Math.max(c, a[b - 1] + e.margin)), f && b < ia.length - 1 && (c = Math.min(c, a[b + 1] - e.margin))), ia.length > 1 && e.limit && (d && b > 0 && (c = Math.min(c, a[b - 1] + e.limit)), f && b < ia.length - 1 && (c = Math.max(c, a[b + 1] - e.limit))), e.padding && (0 === b && (c = Math.max(c, e.padding)), b === ia.length - 1 && (c = Math.min(c, 100 - e.padding))), c = ta.getStep(c), c = i(c), c !== a[b] || g ? c : !1 773 } 774 775 function T(a) { 776 return a + "%" 777 } 778 779 function U(a, b) { 780 qa[a] = b, ua[a] = ta.fromStepping(b); 781 var c = function() { 782 ia[a].style[e.style] = T(b), Y(a), Y(a + 1) 783 }; 784 window.requestAnimationFrame && e.useRequestAnimationFrame ? window.requestAnimationFrame(c) : c() 785 } 786 787 function V() { 788 ra.forEach(function(a) { 789 var b = qa[a] > 50 ? -1 : 1, 790 c = 3 + (ia.length + b * a); 791 ia[a].childNodes[0].style.zIndex = c 792 }) 793 } 794 795 function W(a, b, c, d) { 796 return b = S(qa, a, b, c, d, !1), b === !1 ? !1 : (U(a, b), !0) 797 } 798 799 function Y(a) { 800 if (ja[a]) { 801 var b = 0, 802 c = 100; 803 0 !== a && (b = qa[a - 1]), a !== ja.length - 1 && (c = qa[a]), ja[a].style[e.style] = T(b), ja[a].style[e.styleOposite] = T(100 - c) 804 } 805 } 806 807 function Z(a, b) { 808 null !== a && a !== !1 && ("number" == typeof a && (a = String(a)), a = e.format.from(a), a === !1 || isNaN(a) || W(b, ta.toStepping(a), !1, !1)) 809 } 810 811 function _(a, b) { 812 var c = j(a), 813 d = void 0 === qa[0]; 814 b = void 0 === b ? !0 : !!b, c.forEach(Z), e.animate && !d && h(pa, e.cssClasses.tap, e.animationDuration), ra.forEach(function(a) { 815 W(a, qa[a], !0, !1) 816 }), V(), ra.forEach(function(a) { 817 K("update", a), null !== c[a] && b && K("set", a) 818 }) 819 } 820 821 function aa(a) { 822 _(e.start, a) 823 } 824 825 function ba() { 826 var a = ua.map(e.format.to); 827 return 1 === a.length ? a[0] : a 828 } 829 830 function ca() { 831 for (var a in e.cssClasses) e.cssClasses.hasOwnProperty(a) && m(pa, e.cssClasses[a]); 832 for (; pa.firstChild;) pa.removeChild(pa.firstChild); 833 delete pa.noUiSlider 834 } 835 836 function da() { 837 return qa.map(function(a, b) { 838 var c = ta.getNearbySteps(a), 839 d = ua[b], 840 e = c.thisStep.step, 841 f = null; 842 e !== !1 && d + e > c.stepAfter.startValue && (e = c.stepAfter.startValue - d), f = d > c.thisStep.startValue ? c.thisStep.step : c.stepBefore.step === !1 ? !1 : d - c.stepBefore.highestStep, 100 === a ? e = null : 0 === a && (f = null); 843 var g = ta.countStepDecimals(); 844 return null !== e && e !== !1 && (e = Number(e.toFixed(g))), null !== f && f !== !1 && (f = Number(f.toFixed(g))), [f, e] 845 }) 846 } 847 848 function ea(a, b) { 849 va[a] = va[a] || [], va[a].push(b), "update" === a.split(".")[0] && ia.forEach(function(a, b) { 850 K("update", b) 851 }) 852 } 853 854 function fa(a) { 855 var b = a && a.split(".")[0], 856 c = b && a.substring(b.length);
857 Object.keys(va).forEach(function(a) { 858 var d = a.split(".")[0], 859 e = a.substring(d.length); 860 b && b !== d || c && c !== e || delete va[a] 861 }) 862 } 863 864 function ga(a, b) { 865 var c = ba(), 866 d = ["margin", "limit", "padding", "range", "animate", "snap", "step", "format"]; 867 d.forEach(function(b) { 868 void 0 !== a[b] && (g[b] = a[b]) 869 }); 870 var f = X(g); 871 d.forEach(function(b) { 872 void 0 !== a[b] && (e[b] = f[b]) 873 }), ta = f.spectrum, e.margin = f.margin, e.limit = f.limit, e.padding = f.padding, e.pips && D(e.pips), qa = [], _(a.start || c, b) 874 } 875 var ha, ia, ja, ka, la, ma = p(), 876 na = r(), 877 oa = na && q(), 878 pa = a, 879 qa = [], 880 ra = [], 881 sa = !1, 882 ta = e.spectrum, 883 ua = [], 884 va = {}, 885 wa = null, 886 xa = a.ownerDocument, 887 ya = xa.documentElement, 888 za = xa.body; 889 if (pa.noUiSlider) throw new Error("noUiSlider (" + $ + "): Slider was already initialized."); 890 return v(pa), u(e.connect, ha), ka = { 891 destroy: ca, 892 steps: da, 893 on: ea, 894 off: fa, 895 get: ba, 896 set: _, 897 reset: aa, 898 __moveHandles: function(a, b, c) { 899 J(a, b, qa, c) 900 }, 901 options: g, 902 updateOptions: ga, 903 target: pa, 904 removePips: C, 905 pips: D 906 }, R(e.events), _(e.start), e.pips && D(e.pips), e.tooltips && x(), y(), ka 907 } 908 909 function Z(a, b) { 910 if (!a || !a.nodeName) throw new Error("noUiSlider (" + $ + "): create requires a single element, got: " + a); 911 var c = X(b, a), 912 d = Y(a, c, b); 913 return a.noUiSlider = d, d 914 } 915 var $ = "10.0.0"; 916 C.prototype.getMargin = function(a) { 917 var b = this.xNumSteps[0]; 918 if (b && a / b % 1 !== 0) throw new Error("noUiSlider (" + $ + "): 'limit', 'margin' and 'padding' must be divisible by step."); 919 return 2 === this.xPct.length ? t(this.xVal, a) : !1 920 }, C.prototype.toStepping = function(a) { 921 return a = x(this.xVal, this.xPct, a) 922 }, C.prototype.fromStepping = function(a) { 923 return y(this.xVal, this.xPct, a) 924 }, C.prototype.getStep = function(a) { 925 return a = z(this.xPct, this.xSteps, this.snap, a) 926 }, C.prototype.getNearbySteps = function(a) { 927 var b = w(a, this.xPct); 928 return { 929 stepBefore: { 930 startValue: this.xVal[b - 2], 931 step: this.xNumSteps[b - 2], 932 highestStep: this.xHighestCompleteStep[b - 2] 933 }, 934 thisStep: { 935 startValue: this.xVal[b - 1], 936 step: this.xNumSteps[b - 1], 937 highestStep: this.xHighestCompleteStep[b - 1] 938 }, 939 stepAfter: { 940 startValue: this.xVal[b - 0], 941 step: this.xNumSteps[b - 0], 942 highestStep: this.xHighestCompleteStep[b - 0] 943 } 944 } 945 }, C.prototype.countStepDecimals = function() { 946 var a = this.xNumSteps.map(k); 947 return Math.max.apply(null, a) 948 }, C.prototype.convert = function(a) { 949 return this.getStep(this.toStepping(a)) 950 }; 951 var _ = { 952 to: function(a) { 953 return void 0 !== a && a.toFixed(2) 954 }, 955 from: Number 956 }; 957 return { 958 version: $, 959 create: Z 960 } 961});
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.